X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=usttrace;h=0d2a68ae6ad4c663f534154aeb6a8da8159001e8;hb=e8300fb7111bd3686d8b863db0c661ae491ee6ae;hp=4f6f1f26bf9241d67f8c0f8647e9be05ad03887c;hpb=87d40fcfac1d133efc27f9bd32a7509f586f358a;p=ust.git diff --git a/usttrace b/usttrace index 4f6f1f2..0d2a68a 100755 --- a/usttrace +++ b/usttrace @@ -27,7 +27,7 @@ USTTRACE_DIR="$(dirname $0)" if [ -x "${USTTRACE_DIR}/ustd/ustd" ] ; then # Use the not installed libraries instead USTD="${USTTRACE_DIR}/ustd/ustd" - LIBINTERFORK_PATH="${USTTRACE_DIR}/libinterfork/.libs/libinterfork.so" + LIBINTERFORK_PATH="${USTTRACE_DIR}/libustfork/.libs/libustfork.so" LIBMALLOCWRAP_PATH="${USTTRACE_DIR}/libmallocwrap/.libs/libmallocwrap.so" LIBUST_PATH="${USTTRACE_DIR}/libust/.libs/libust.so" else @@ -37,7 +37,7 @@ else error "cannot find an executable ustd; make sure its location is in the PATH" exit 1 fi - LIBINTERFORK_PATH="libinterfork.so" + LIBINTERFORK_PATH="libustfork.so" LIBMALLOCWRAP_PATH="libmallocwrap.so" LIBUST_PATH="libust.so.0" fi @@ -56,13 +56,14 @@ function usage () { echo " -s Use system-wide daemon instead of creating one for this session." 2>/dev/stderr } -while getopts ":hlLmfs" options; do +while getopts ":hlLmfsW" options; do case $options in l) arg_preload_libust=1;; L) arg_ld_std_ust=1;; m) arg_preload_malloc=1;; f) arg_preload_fork=1;; s) arg_syswide_daemon=1;; + W) where=1;; h) usage; exit 0;; \?) usage @@ -73,6 +74,11 @@ while getopts ":hlLmfs" options; do done shift $(($OPTIND - 1)) +if [ -n "$where" ]; then + echo $BASE_TRACE_DIR/$(ls "$BASE_TRACE_DIR" | tail -n 1) + exit 0 +fi + # Prepare vars CMD=$* @@ -90,7 +96,7 @@ then fi # Create directory for trace output -DATESTRING="$(hostname)-$(date +%Y%m%d%H%M%S)" +DATESTRING="$(hostname)-$(date +%Y%m%d%H%M%S%N)" OUTDIR="$BASE_TRACE_DIR/$DATESTRING" mkdir -p "$OUTDIR" @@ -145,12 +151,6 @@ fi export LD_PRELOAD="$LD_PRELOAD:$LIBINTERFORK_PATH" fi -# Install a handler for SIGIO. This is the signal that will be sent by ustd to -# the traced program to trigger the creation of its listener thread. However, -# it is possible that the SIGIO will be sent after the shell fork, but before -# the exec of the command. If this handler isn't there, bash might terminate -# because of a unhandled signal. - # Execute the command $CMD 2>&1 ) | tee "$OUTDIR/app.log"