1*387f9dfdSAndroid Build Coastguard WorkerDemonstrations of sigsnoop. 2*387f9dfdSAndroid Build Coastguard Worker 3*387f9dfdSAndroid Build Coastguard Worker 4*387f9dfdSAndroid Build Coastguard WorkerThis traces signals generated system wide. For example: 5*387f9dfdSAndroid Build Coastguard Worker 6*387f9dfdSAndroid Build Coastguard Worker# ./sigsnoop -n 7*387f9dfdSAndroid Build Coastguard WorkerTIME PID COMM SIG TPID RESULT 8*387f9dfdSAndroid Build Coastguard Worker19:56:14 3204808 a.out SIGSEGV 3204808 0 9*387f9dfdSAndroid Build Coastguard Worker19:56:14 3204808 a.out SIGPIPE 3204808 0 10*387f9dfdSAndroid Build Coastguard Worker19:56:14 3204808 a.out SIGCHLD 3204722 0 11*387f9dfdSAndroid Build Coastguard Worker 12*387f9dfdSAndroid Build Coastguard WorkerThe first line showed that a.out (a test program) deliver a SIGSEGV signal. 13*387f9dfdSAndroid Build Coastguard WorkerThe result, 0, means success. 14*387f9dfdSAndroid Build Coastguard Worker 15*387f9dfdSAndroid Build Coastguard WorkerThe second and third lines showed that a.out also deliver SIGPIPE/SIGCHLD 16*387f9dfdSAndroid Build Coastguard Workersignals successively. 17*387f9dfdSAndroid Build Coastguard Worker 18*387f9dfdSAndroid Build Coastguard WorkerUSAGE message: 19*387f9dfdSAndroid Build Coastguard Worker 20*387f9dfdSAndroid Build Coastguard Worker# ./sigsnoop -h 21*387f9dfdSAndroid Build Coastguard WorkerUsage: sigsnoop [OPTION...] 22*387f9dfdSAndroid Build Coastguard WorkerTrace standard and real-time signals. 23*387f9dfdSAndroid Build Coastguard Worker 24*387f9dfdSAndroid Build Coastguard WorkerUSAGE: sigsnoop [-h] [-x] [-k] [-n] [-p PID] [-s SIGNAL] 25*387f9dfdSAndroid Build Coastguard Worker 26*387f9dfdSAndroid Build Coastguard WorkerEXAMPLES: 27*387f9dfdSAndroid Build Coastguard Worker sigsnoop # trace signals system-wide 28*387f9dfdSAndroid Build Coastguard Worker sigsnoop -k # trace signals issued by kill syscall only 29*387f9dfdSAndroid Build Coastguard Worker sigsnoop -x # trace failed signals only 30*387f9dfdSAndroid Build Coastguard Worker sigsnoop -p 1216 # only trace PID 1216 31*387f9dfdSAndroid Build Coastguard Worker sigsnoop -s 9 # only trace signal 9 32*387f9dfdSAndroid Build Coastguard Worker 33*387f9dfdSAndroid Build Coastguard Worker -k, --kill Trace signals issued by kill syscall only. 34*387f9dfdSAndroid Build Coastguard Worker -n, --name Output signal name instead of signal number. 35*387f9dfdSAndroid Build Coastguard Worker -p, --pid=PID Process ID to trace 36*387f9dfdSAndroid Build Coastguard Worker -s, --signal=SIGNAL Signal to trace. 37*387f9dfdSAndroid Build Coastguard Worker -x, --failed Trace failed signals only. 38*387f9dfdSAndroid Build Coastguard Worker -?, --help Give this help list 39*387f9dfdSAndroid Build Coastguard Worker --usage Give a short usage message 40*387f9dfdSAndroid Build Coastguard Worker -V, --version Print program version 41*387f9dfdSAndroid Build Coastguard Worker 42*387f9dfdSAndroid Build Coastguard WorkerMandatory or optional arguments to long options are also mandatory or optional 43*387f9dfdSAndroid Build Coastguard Workerfor any corresponding short options. 44*387f9dfdSAndroid Build Coastguard Worker 45*387f9dfdSAndroid Build Coastguard WorkerReport bugs to https://github.com/iovisor/bcc/tree/master/libbpf-tools. 46