X-Git-Url: http://git.efficios.com/?p=lttng-tools.git;a=blobdiff_plain;f=extras%2Fcore-handler%2Fhandler.sh;h=c2d24027b42224bd31a368d2da9266c69eceb23e;hp=3026e52f9a90baeae8bdf4d0f3f18b2d983a4195;hb=5d9ad61212d307697bb661bafcf16356fea915ac;hpb=57f0bd0c140c6a5b1f48b45a6680c55348ddbe96 diff --git a/extras/core-handler/handler.sh b/extras/core-handler/handler.sh index 3026e52f9..c2d24027b 100755 --- a/extras/core-handler/handler.sh +++ b/extras/core-handler/handler.sh @@ -23,18 +23,22 @@ PGREP_BIN="pgrep" MKDIR_BIN="mkdir" LTTNG_BIN="lttng" -# Core file settings. -CORE_PATH="/tmp/lttng/core" -CORE_PREFIX="core" - -# Folder where to save snapshot output. -# Can also be a remote URI. -SNAPSHOT_PATH="/tmp/lttng/snapshot" -SNAPSHOT_OUTPUT="file://${SNAPSHOT_PATH}" +# Session name +SESSION_NAME="coredump-handler" # Sessiond binary name. SESSIOND_BIN_NAME="lttng-sessiond" +# TODO: Checking for a sessiond lockfile would be more appropriate. +if $PGREP_BIN -u root "${SESSIOND_BIN_NAME}" > /dev/null 2>&1 +then + $LTTNG_BIN snapshot record -s ${SESSION_NAME} > /dev/null 2>&1 +fi + +# Core file settings. +CORE_PATH="/tmp/lttng/core" +CORE_PREFIX="core" + # Core specifiers, see man core(5) p=$1 # PID of dumped process @@ -56,17 +60,3 @@ $CAT_BIN - > "${CORE_PATH}/${CORE_PREFIX}.$p" # Optional, chain core dump handler with original systemd script. #$CAT_BIN - | /usr/lib/systemd/systemd-coredump $p $u $g $s $t $e - -# TODO: Checking for a sessiond lockfile would be more appropriate. -if $PGREP_BIN -u root "${SESSIOND_BIN_NAME}" > /dev/null 2>&1 -then - # Since we are called via the kernel coredump mechanism, we need to - # setup our environment manually. - # - # The lttng command line tool lookup $HOME to adjust the .lttngrc - # path. This is useful to have automatic session name lookup. - export HOME="/root" - $MKDIR_BIN -p "${SNAPSHOT_PATH}" - $LTTNG_BIN snapshot add-output "${SNAPSHOT_OUTPUT}" > /dev/null 2>&1 - $LTTNG_BIN snapshot record > /dev/null 2>&1 -fi