strace -f
untuk melacak proses anak yaitu fork()
ed.
Ada skrip perl bernama strace-graph
. Ini adalah versi dari github. Itu dikemas dengan crosstool-ng versi kompiler. Ini berfungsi untuk saya bahkan menggunakan lintas platform.
Kotak ARM Linux.
$ ./strace -f -q -s 100 -o app.trc -p 449
$ tftp -pr app.trc 172.0.0.133
Kotak Linux X86_64.
$ ./strace-graph /srv/tftp/app.trc
(anon)
+-- touch /tmp/ppp.sleep
+-- killall -HUP pppd
+-- amixer set Speaker 70%
+-- amixer set Speaker 70%
+-- amixer set Speaker 70%
+-- amixer set Speaker 70%
+-- amixer set Speaker 50%
+-- amixer set Speaker 70%
`-- amixer set Speaker 50%
Outputnya dapat digunakan untuk membantu menavigasi log pelacakan utama.
Saya tidak bisa melihat cara yang mudah:
Anda bisa menggunakan -ff
opsi dengan -o filename
untuk menghasilkan banyak file (satu per pid).
misalnya:
strace -o process_dump -ff ./executable
grep clone process_dump*
itu akan membantu Anda melihat orang tua mana yang menciptakan apa. Mungkin itu akan membantu Anda - setidaknya Anda dapat menelusuri mundur.
Bagaimana cara menjalankan skrip Shell ketika file atau direktori berubah?
Bagaimana cara memanggil Wine dll dari python di Linux?