2012-09-26 2 views
5

Das Ausführen von Valgrind auf Vordergrundprogrammen ist einfach. Aber Valgrind funktioniert für Daemon-Programme und gibt die Ausgabe nach der Ausführung. Und wie mache ich das? DankeFunktioniert das Valgrind für Daemon-Programme

+0

Bitte geben Sie einen Kontext an. Welches OS? Was ist der "Daemon"? – Gourneau

Antwort

7

Ja, Valgrind wird sicherlich für Daemon-Programme arbeiten.

Viele Daemons haben eine Art Debug-Modus, zum Beispiel der -X Switch zum Apache, was dazu führt, dass sie nicht forkieren oder in den Hintergrund treten, und in diesem Fall ist der einfachste Weg, sie zu valgrinden damit sie am Terminal hängen bleiben.

In anderen Fällen werden Sie noch in der Lage sein, valgrind zu verwenden, aber Sie werden wahrscheinlich wollen --log-file oder eine der anderen Protokollierungsoptionen verwenden, um die Ausgabe an einen geeigneten Ort zu schicken, und Sie müssen unter Umständen auch --trace-children verursachen valgrind zu Folge Child-Prozessen, wenn der Daemon Gabeln.

Die Ausgabe, z. B. Speicherleckberichte, die nur beim Beenden des Programms ausgegeben wird, sollte beim Herunterfahren des Dämons normal erscheinen.

+0

Als kleine Ergänzung zu der Lösung - für mich funktioniert das nur, wenn es als - trace-children = yes - gegeben wird - als Hilfe für die schnellen Leser. –