#! /bin/sh # this is intended to be started in preinit. # 11_bootchart, starts it # 72_bootchart, fixup mount point after pivot # # program can be killed early with # bootchart_run_preinit stop trap "stop; exit 0;" SIGINT SIGTERM STOP_AFTER=250 HZ=50 if [ -z "$1" ] then echo "you need to specify start or stop" exit 1 fi start() { /sbin/bootchart-collector $HZ & } stop() { echo "bootchart DUMP" mkdir /tmp/bootchart /sbin/bootchart-collector --dump /tmp/bootchart cd /tmp/bootchart tar -zcf /tmp/bootchart.tgz header *.log cd / rm -rf /tmp/bootchart } case $1 in boot) # secret option for preinit start sleep $STOP_AFTER # test to see if someone has manually killed us if [ -f /tmp/bootchart.tgz ] then exit 0 fi stop ;; start) start ;; stop) stop ;; *) echo "you need to specify start or stop, not $1" exit 1 ;; esac