# strace(1) ```markdown strace [opts] [prg] -f .......... follow child processes on fork(2) -p .... attach to running process -s ... max string size, truncate of longer (default: 32) -e ... expression for trace filtering -o ... log output into -c .......... dump syscall statitics at the end -k .......... dump stack trace for each syscall ``` ```markdown : trace=syscall[,syscall] .... trace only syscall listed trace=file ................. trace all syscall that take a filename as arg trace=process .............. trace process management related syscalls trace=signal ............... trace signal related syscalls signal ..................... trace signals delivered to the process ``` # Examples Trace `open(2)` & `socket(2)` syscalls for a running process + child processes: ```markdown strace -f -e trace=open,socket -p ``` Trace signals delivered to a running process: ```markdown strace -f -e signal -p ```