Trace file access
Find files the process tries to open but cannot find
strace -e trace=openat -e trace=file myapp 2>&1 | grep 'ENOENT'
- tool
- strace13 commands
More strace commands
-
strace -e trace=network,socket curl https://example.com 2>&1 | grep -v '^---'Capture all network-related syscalls
-
strace -c -f -S time -p <pid>Aggregate syscall counts/time across forks, sorted by time; pinpoints the costly call
-
strace -yy -T -tt -e trace=%file -p <pid>Show paths/sockets behind fds plus per-call duration and timestamps for file ops
-
strace -k -e trace=openat -f -p <pid>Print user stack on each openat to find which code path opens a file; needs debug symbols
-
strace -f -e inject=openat:error=ENOENT:when=3 -p <pid>Force the 3rd openat to fail with ENOENT to test error handling; chaos testing without code