Strace verwenden

Aus FHEMWiki
Version vom 21. Juli 2014, 15:31 Uhr von Neubert (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „ Auf Linux-Maschinen können mit dem Befehl <pre> strace -p PIDvonFHEM -ttT -o strace.log </pre> sämtliche Systemaufrufe von FHEM in eine Datei protokolliert …“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Auf Linux-Maschinen können mit dem Befehl

strace -p PIDvonFHEM -ttT -o strace.log

sämtliche Systemaufrufe von FHEM in eine Datei protokolliert werden. Dabei wird jeder Zeile ein Zeitstempel (aktuelle Uhrzeit) vorangestellt und die Dauer des Systemaufrufs in Sekunden in spitzen Klammern hintenangestellt.

Um nur Aufrufe von select und write zu sehen, kann man mit der Option

-e trace=select,write

vorfiltern. Näheres ist der Manpage von strace zu entnehmen.

Lang laufende Operationen (eine Sekunde oder länger) werden dann parallel dazu in einem anderen Terminal mit

tail -f strace.log | grep -v '<0.' 

herausgefiltert.

Um herauszufinden, was die Filedeskriptoren bedeuten, wird der Befehl

list .* FD

auf der FHEM-Kommandozeile aufgerufen. Ist der Filedeskriptor nicht dabei, wird man im Verzeichnis

/proc/PIDvonFHEM/fd

fündig.