Test: clear: local, streaming, live, tracefile rotation
[lttng-tools.git] / tests / utils / utils.sh
index d8c8a1fed0e5dbd69c3b2d3a84e4779ea7a56e67..a63efdf63c3638b07bab0f3642b86b98de5786b3 100644 (file)
@@ -125,6 +125,16 @@ function conf_proc_count()
        echo
 }
 
+# Check if base lttng-modules are present.
+# Bail out on failure
+function validate_lttng_modules_present ()
+{
+       modprobe -n lttng-tracer 2>/dev/null
+       if [ $? -ne 0  ]; then
+               BAIL_OUT "LTTng modules not detected."
+       fi
+}
+
 function enable_kernel_lttng_event
 {
        local withtap="$1"
@@ -333,11 +343,17 @@ function start_lttng_relayd_opt()
 {
        local withtap=$1
        local opt=$2
+       local env_vars=""
 
        DIR=$(readlink -f $TESTDIR)
 
+       # Check for env. variable. Allow the use of LD_PRELOAD etc.
+       if [[ "x${LTTNG_RELAYD_ENV_VARS}" != "x" ]]; then
+               env_vars=${LTTNG_RELAYD_ENV_VARS}
+       fi
+
        if [ -z $(pgrep $RELAYD_MATCH) ]; then
-               $DIR/../src/bin/lttng-relayd/$RELAYD_BIN -b $opt 1> $OUTPUT_DEST 2> $ERROR_OUTPUT_DEST
+               env $env_vars $DIR/../src/bin/lttng-relayd/$RELAYD_BIN -b $opt 1> $OUTPUT_DEST 2> $ERROR_OUTPUT_DEST
                #$DIR/../src/bin/lttng-relayd/$RELAYD_BIN $opt -vvv >>/tmp/relayd.log 2>&1 &
                if [ $? -eq 1 ]; then
                        if [ $withtap -eq "1" ]; then
@@ -601,9 +617,9 @@ function stop_lttng_consumerd_opt()
        if [ $withtap -eq "1" ]; then
                diag "Killing $CONSUMERD_BIN pids: $(echo $PID_CONSUMERD | tr '\n' ' ')"
        fi
+
        kill $kill_opt $PID_CONSUMERD 1> $OUTPUT_DEST 2> $ERROR_OUTPUT_DEST
        retval=$?
-       set +x
 
        if [ $? -eq 1 ]; then
                if [ $withtap -eq "1" ]; then
@@ -658,7 +674,6 @@ function sigstop_lttng_consumerd_opt()
        fi
        kill $kill_opt $PID_CONSUMERD 1> $OUTPUT_DEST 2> $ERROR_OUTPUT_DEST
        retval=$?
-       set +x
 
        if [ $? -eq 1 ]; then
                if [ $withtap -eq "1" ]; then
@@ -713,6 +728,15 @@ function create_lttng_session_no_output ()
        ok $? "Create session $sess_name in no-output mode"
 }
 
+function create_lttng_session_uri () {
+    local sess_name=$1
+    local uri=$2
+    local opts="${@:3}"
+
+    $TESTDIR/../src/bin/lttng/$LTTNG_BIN create $sess_name -U $uri $opts 1> $OUTPUT_DEST 2> $ERROR_OUTPUT_DEST
+    ok $? "Create session $sess_name with uri:$uri and opts: $opts"
+}
+
 function create_lttng_session ()
 {
        local withtap=$1
@@ -1064,52 +1088,68 @@ function disable_python_lttng_event ()
 
 function start_lttng_tracing ()
 {
-       local expected_to_fail=$1
-       local sess_name=$2
+       local withtap=$1
+       local expected_to_fail=$2
+       local sess_name=$3
 
        $TESTDIR/../src/bin/lttng/$LTTNG_BIN start $sess_name 1> $OUTPUT_DEST 2> $ERROR_OUTPUT_DEST
        ret=$?
-       if [[ $expected_to_fail -eq "1" ]]; then
-               test "$ret" -ne "0"
-               ok $? "Start tracing for session $sess_name failed as expected"
-       else
-               ok $ret "Start tracing for session $sess_name"
+       if [ $withtap -eq "1" ]; then
+               if [[ $expected_to_fail -eq "1" ]]; then
+                       test "$ret" -ne "0"
+                       ok $? "Start tracing for session $sess_name failed as expected"
+               else
+                       ok $ret "Start tracing for session $sess_name"
+               fi
        fi
 }
 
 function start_lttng_tracing_ok ()
 {
-       start_lttng_tracing 0 "$@"
+       start_lttng_tracing 0 "$@"
 }
 
 function start_lttng_tracing_fail ()
 {
-       start_lttng_tracing 1 "$@"
+       start_lttng_tracing 1 1 "$@"
+}
+
+function start_lttng_tracing_notap ()
+{
+       start_lttng_tracing 0 0 "$@"
 }
 
 function stop_lttng_tracing ()
 {
-       local expected_to_fail=$1
-       local sess_name=$2
+       local withtap=$1
+       local expected_to_fail=$2
+       local sess_name=$3
 
        $TESTDIR/../src/bin/lttng/$LTTNG_BIN stop $sess_name 1> $OUTPUT_DEST 2> $ERROR_OUTPUT_DEST
        ret=$?
-       if [[ $expected_to_fail -eq "1" ]]; then
-               test "$ret" -ne "0"
-               ok $? "Stop lttng tracing for session $sess_name failed as expected"
-       else
-               ok $ret "Stop lttng tracing for session $sess_name"
+       if [ $withtap -eq "1" ]; then
+               if [[ $expected_to_fail -eq "1" ]]; then
+                       test "$ret" -ne "0"
+                       ok $? "Stop lttng tracing for session $sess_name failed as expected"
+               else
+                       ok $ret "Stop lttng tracing for session $sess_name"
+               fi
        fi
 }
 
 function stop_lttng_tracing_ok ()
 {
-       stop_lttng_tracing 0 "$@"
+       stop_lttng_tracing 0 "$@"
 }
 
 function stop_lttng_tracing_fail ()
 {
-       stop_lttng_tracing 1 "$@"
+       stop_lttng_tracing 1 1 "$@"
+}
+
+function stop_lttng_tracing_notap ()
+{
+       stop_lttng_tracing 0 0 "$@"
 }
 
 function destroy_lttng_session ()
@@ -1210,7 +1250,6 @@ function lttng_snapshot_del_output_fail ()
 function lttng_snapshot_record ()
 {
        local sess_name=$1
-       local trace_path=$2
 
        $TESTDIR/../src/bin/lttng/$LTTNG_BIN snapshot record -s $sess_name 1> $OUTPUT_DEST 2> $ERROR_OUTPUT_DEST
        ok $? "Snapshot recorded"
@@ -1574,3 +1613,34 @@ function destructive_tests_enabled ()
                return 1
        fi
 }
+
+function lttng_clear_session ()
+{
+       local expected_to_fail=$1
+       local sess_name=$2
+
+       $TESTDIR/../src/bin/lttng/$LTTNG_BIN clear $sess_name 1> $OUTPUT_DEST 2> $ERROR_OUTPUT_DEST
+       ret=$?
+       if [[ $expected_to_fail -eq "1" ]]; then
+               test "$ret" -ne "0"
+               ok $? "Expected fail on clear session $sess_name"
+       else
+               ok $ret "Clear session $sess_name"
+       fi
+}
+
+function lttng_clear_session_ok ()
+{
+       lttng_clear_session 0 $@
+}
+
+function lttng_clear_session_fail ()
+{
+       lttng_clear_session 1 $@
+}
+
+function lttng_clear_all ()
+{
+       $TESTDIR/../src/bin/lttng/$LTTNG_BIN clear --all 1> $OUTPUT_DEST 2> $ERROR_OUTPUT_DEST
+       ok $? "Clear all lttng sessions"
+}
This page took 0.049438 seconds and 5 git commands to generate.