Wenn Logs nicht helfen, sind strace/ltrace das Sicherheitsnetz.
strace¶
strace ls /tmp
strace -p 1234
strace -e open,read,write ls /tmp
strace -c ls /tmp
Beispiele¶
strace -e openat ./app 2>&1 | grep error
strace -e write -p $(pgrep myapp)
strace -c -p $(pgrep myapp) # wo die Zeit verbraucht wird
ltrace¶
ltrace ./my-program
ltrace -e malloc+free ./my-program
- -f = Kindprozesse
- -s 1000 = laengere Strings
- In Produktion nur kurzzeitig verwenden
Ultimatives Debugging¶
strace spart Stunden beim Troubleshooting.
straceltracedebugging