| 1 | #!/bin/sh |
| 2 | # |
| 3 | # Copyright (C) 2013 - Christian Babeux <christian.babeux@efficios.com> |
| 4 | # |
| 5 | # This program is free software; you can redistribute it and/or |
| 6 | # modify it under the terms of the GNU General Public License |
| 7 | # as published by the Free Software Foundation; only version 2 |
| 8 | # of the License. |
| 9 | # |
| 10 | # This program is distributed in the hope that it will be useful, |
| 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| 13 | # GNU General Public License for more details. |
| 14 | # |
| 15 | # You should have received a copy of the GNU General Public License |
| 16 | # along with this program; if not, write to the Free Software |
| 17 | # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
| 18 | # |
| 19 | |
| 20 | LTTNG_BIN="lttng" |
| 21 | |
| 22 | SESSION_NAME="coredump-handler" |
| 23 | |
| 24 | # Just recording kernel event sched_switch as an example, but we can as |
| 25 | # well record user-space events from UST domain. |
| 26 | EVENT_NAME="sched_switch" |
| 27 | |
| 28 | SNAPSHOT_PATH="/tmp/lttng/snapshot" |
| 29 | SNAPSHOT_URI="file://${SNAPSHOT_PATH}" |
| 30 | |
| 31 | echo "Setup ${SESSION_NAME}..." |
| 32 | $LTTNG_BIN create ${SESSION_NAME} --snapshot -U ${SNAPSHOT_PATH} |
| 33 | $LTTNG_BIN enable-event ${EVENT_NAME} -k -s ${SESSION_NAME} |
| 34 | $LTTNG_BIN start ${SESSION_NAME} |
| 35 | |
| 36 | echo "Sleeping..." |
| 37 | sleep 10 |
| 38 | |
| 39 | echo "Crashing..." |
| 40 | $(dirname $0)/crash |
| 41 | |
| 42 | echo "Sleeping..." |
| 43 | sleep 10 |
| 44 | |
| 45 | $LTTNG_BIN stop ${SESSION_NAME} |
| 46 | $LTTNG_BIN destroy ${SESSION_NAME} |
| 47 | |
| 48 | echo "Core dump will be available in /tmp/lttng/core." |
| 49 | echo "Snapshot will be available in ${SNAPSHOT_PATH}." |