2015-10-22 08:00:05 +01:00
|
|
|
# strace
|
2015-03-21 00:01:05 +00:00
|
|
|
|
2016-01-07 17:31:27 +00:00
|
|
|
> Troubleshooting tool for tracing system calls.
|
2022-03-21 17:07:48 +00:00
|
|
|
> More information: <https://manned.org/strace>.
|
2015-03-21 00:01:05 +00:00
|
|
|
|
2024-02-19 14:28:47 +00:00
|
|
|
- Start tracing a specific [p]rocess by its PID:
|
2015-03-21 00:01:05 +00:00
|
|
|
|
|
|
|
`strace -p {{pid}}`
|
|
|
|
|
2024-02-19 14:28:47 +00:00
|
|
|
- Trace a [p]rocess and filt[e]r output by system call:
|
2015-03-21 00:01:05 +00:00
|
|
|
|
2024-02-19 14:28:47 +00:00
|
|
|
`strace -p {{pid}} -e {{system_call,system_call2,...}}`
|
2015-03-21 00:01:05 +00:00
|
|
|
|
2016-01-07 17:31:27 +00:00
|
|
|
- Count time, calls, and errors for each system call and report a summary on program exit:
|
2015-03-21 00:01:05 +00:00
|
|
|
|
2015-03-21 01:02:35 +00:00
|
|
|
`strace -p {{pid}} -c`
|
2016-01-03 18:17:07 +00:00
|
|
|
|
2024-02-19 14:28:47 +00:00
|
|
|
- Show the [T]ime spent in every system call:
|
2016-01-03 18:17:07 +00:00
|
|
|
|
|
|
|
`strace -p {{pid}} -T`
|
2016-08-22 12:59:39 +01:00
|
|
|
|
2018-01-01 15:36:51 +00:00
|
|
|
- Start tracing a program by executing it:
|
2016-08-22 12:59:39 +01:00
|
|
|
|
|
|
|
`strace {{program}}`
|
2017-12-07 19:16:57 +00:00
|
|
|
|
|
|
|
- Start tracing file operations of a program:
|
|
|
|
|
|
|
|
`strace -e trace=file {{program}}`
|
2024-02-19 14:28:47 +00:00
|
|
|
|
|
|
|
- Start tracing network operations of a program as well as all its [f]orked and child processes, saving the [o]utput to a file:
|
|
|
|
|
|
|
|
`strace -f -e trace=network -o {{trace.txt}} {{program}}`
|