X-Git-Url: http://git.lttng.org/?p=lttngtop.git;a=blobdiff_plain;f=utils%2Flttngtrace;fp=utils%2Flttngtrace;h=0000000000000000000000000000000000000000;hp=5486d9059cff05db09262ed636bb802515795a55;hb=1fdaa9defdae5b5ec305da1e063bd5cb09f49a22;hpb=3f2c1b6d077dc8bc0d222cf4a18007c4418da0e1 diff --git a/utils/lttngtrace b/utils/lttngtrace deleted file mode 100755 index 5486d90..0000000 --- a/utils/lttngtrace +++ /dev/null @@ -1,134 +0,0 @@ -#!/bin/bash - -# Wrapper to setup a live session on localhost and read it in text mode live - -SESSION_NAME="lttngtop-live-simple-$RANDOM" - -destroy() -{ - lttng destroy $SESSION_NAME >/dev/null - rm -rf $HOME/lttng-traces/$HOSTNAME/${SESSION_NAME}* - exit 0 -} - -if test "$1" = "-h" -o "$1" = "--help"; then - echo "usage : $0 [OPTIONS] [program [program-options]]" - echo "OPTIONS :" - echo " -f Follow threads associated with selected PIDs" - echo " -p Comma-separated list of PIDs to display (in addition to the eventual executed program)" - echo " -n Comma-separated list of procnames to display (in addition to the eventual executed program)" - echo " -a In textdump mode, display all events but write in bold the processes we are interested in (-f and -p)" - echo " -k kprobes to insert (same format as lttng enable-event, can be repeated)" - echo " -o In textdump, output the log in " - exit 0 -fi - -pgrep -u root lttng-sessiond >/dev/null -if test $? != 0; then - echo "Starting lttng-sessiond as root (trying sudo, start manually if \ -it fails)" - sudo lttng-sessiond -d - if test $? != 0; then - exit 1 - fi -fi - -pgrep lttng-relayd >/dev/null -if test $? != 0; then - echo "Starting lttng-relayd as your current user, start manually if \ -it fails" - lttng-relayd -d - if test $? != 0; then - exit 1 - fi -fi - -SUDO="" -groups|grep tracing >/dev/null -if test $? != 0; then - echo "You are not a member of the tracing group, so you need root \ -access, the script will try with sudo" - SUDO="sudo" -fi - -# check if lttng command if in the path -# check if the user can execute the command (with sudo if not in tracing group) -# check if lttng-modules is installed -$SUDO lttng list -k | grep sched_switch >/dev/null -if test $? != 0; then - echo "Something went wrong executing \"$SUDO lttng list -k | grep sched_switch\", \ -try to fix the problem manually and then start the script again" -fi - -# if our random session name was already in use, add more randomness... -$SUDO lttng list | grep $SESSION_NAME -if test $? = 0; then - SESSION_NAME="$SESSION_NAME-$RANDOM" -fi -$SUDO lttng list | grep $SESSION_NAME -if test $? = 0; then - echo "Cannot create a random session name, something must be wrong" - exit 2 -fi - -lttng create $SESSION_NAME --live 1000000 -U net://localhost >/dev/null -[[ $? != 0 ]] && exit 2 - -trap "destroy" SIGINT SIGTERM - -lttng enable-event -s $SESSION_NAME -u -a >/dev/null -lttng add-context -s $SESSION_NAME -u -t vpid -t procname -t vtid >/dev/null - -lttng enable-event -s $SESSION_NAME -k lttng_statedump_start,lttng_statedump_end,lttng_statedump_process_state,lttng_statedump_file_descriptor,lttng_statedump_vm_map,lttng_statedump_network_interface,lttng_statedump_interrupt,sched_process_free,sched_switch,sched_process_fork >/dev/null -[[ $? != 0 ]] && exit 2 -lttng enable-event -s $SESSION_NAME -k --syscall -a >/dev/null -[[ $? != 0 ]] && exit 2 -lttng add-context -s $SESSION_NAME -k -t pid -t procname -t tid -t ppid >/dev/null -[[ $? != 0 ]] && exit 2 -# if you want to add Perf counters, do something like that : -#lttng add-context -s $SESSION_NAME -k -t perf:cache-misses -t perf:major-faults -t perf:branch-load-misses >/dev/null - -LTTNGTOPARGS="" -PROG="" - -while [ "$1" != "" ]; do - if test "$1" = "-p"; then - shift - LTTNGTOPARGS="$LTTNGTOPARGS -p $1" - shift - elif test "$1" = "-k"; then - shift - lttng enable-event -k -s $SESSION_NAME "probe-$1" --probe $1 >/dev/null - shift - elif test "$1" = "-o"; then - shift - LTTNGTOPARGS="$LTTNGTOPARGS -o $1" - shift - elif test "$1" = "-n"; then - shift - LTTNGTOPARGS="$LTTNGTOPARGS -n $1" - shift - elif test "${1:0:1}" = "-"; then - LTTNGTOPARGS="$LTTNGTOPARGS $1" - shift - else - PROG=$@ - break - fi -done - -if test ! -z "$PROG"; then - PROG="-- $PROG" -fi - -lttng start $SESSION_NAME >/dev/null -[[ $? != 0 ]] && exit 2 - -s=$(lttngtop -r net://localhost | grep $SESSION_NAME) -if test $? != 0; then - echo "Problem executing lttngtop -r net://localhost | grep $SESSION_NAME" - exit 1 -fi -lttngtop -t -r $(echo $s|cut -d' ' -f1) $LTTNGTOPARGS $PROG - -destroy