3 # Copyright (C) 2012 David Goulet <dgoulet@efficios.com>
5 # SPDX-License-Identifier: LGPL-2.1-only
7 TEST_DESC
="UST tracer - Testing low events throughput"
10 TESTDIR
=$CURDIR/..
/..
/..
12 SESSION_NAME
="low-throughput"
16 source $TESTDIR/utils
/utils.sh
18 if [ ! -x "$CURDIR/$BIN_NAME" ]; then
19 BAIL_OUT
"No UST nevents binary detected."
22 TRACE_PATH
=$
(mktemp
-d -t tmp.test_low_throughput_ust_trace_path.XXXXXX
)
24 # MUST set TESTDIR before calling those functions
28 print_test_banner
"$TEST_DESC"
30 bail_out_if_no_babeltrace
34 create_lttng_session_ok
$SESSION_NAME $TRACE_PATH
36 enable_ust_lttng_event_ok
$SESSION_NAME $EVENT_NAME
37 start_lttng_tracing_ok
$SESSION_NAME
39 # This is going to take 20 minutes
40 .
/$CURDIR/$BIN_NAME >/dev
/null
2>&1
42 stop_lttng_tracing_ok
$SESSION_NAME
43 destroy_lttng_session_ok
$SESSION_NAME
52 "$BABELTRACE_BIN" $TRACE_PATH |
while read event
;
54 val
=$
(echo $event | cut
-f10 -d" ")
56 th
=$
(echo $event | cut
-f13 -d " ")
58 if [ $th = '"one"' ]; then
60 # We expect here a continous value from 1 to 20
61 if [ $last_val -ne $val ]; then
62 diag
"One minute event failed ($val)"
66 elif [ $th = '"ten"' ]; then
67 # Test 10 minutes counter
68 if [ $val -ne 10 ]; then
69 # Test 20 minutes counter
70 if [ $val -ne 20 ]; then
71 diag
"Ten minutes event failed ($val)"
76 elif [ $th = '"twenty"' ]; then
77 # Test 20 minutes counter
78 if [ $val -ne 20 ]; then
79 diag
"Twenty minutes event failed ($val)"
86 ok
$out "Trace validation"