Wie kann ich stdout / stderr einer Startanwendung anzeigen?

12

Einige der Befehle, die ich in Startup Applications habe, werden beim Anmelden nicht ordnungsgemäß gestartet. (Insbesondere habe ich Probleme mit gtk-redshift.) Zum Debuggen möchte ich stdout / stderr anzeigen können. Ich habe keine Protokolldatei für Startup Applications gefunden. Ich habe versucht, mit ">> log.txt" in eine Datei umzuleiten, ohne Erfolg.

Wie kann ich stdout / stderr für eine Startanwendung sehen? Besser noch, gibt es eine Protokolldatei für Startup-Anwendungen?

Adam Paetznick
quelle

Antworten:

7

Ich denke, das Beste, was zu tun ist, ist, entweder den Bash-Befehl weiter unten beim Start zu platzieren oder ihn in ein Bash-Skript einzufügen und dies in Ihren Startanwendungen auszuwählen. Ich habe die -vOption hinzugefügt, damit die Anwendung alle Aktionen mit größter Sorgfalt aufzeichnet. Einige Anwendungen haben andere Ausführlichkeitseinstellungen und sogar verschiedene Ebenen, die Sie angeben können.

Die verwendete &>Umleitung ist die gleiche wie die, 2>&1bei der die gesamte Ausgabe ( stderr, stdout) des Programms in die angegebene Datei umgeleitet wird , d &>/home/mike/redshift.log. H.

Hier ist der Befehl, der zum Einrichten der Protokollierung verwendet werden kann, und er kann für andere Programme verwendet werden, wenn er entsprechend geändert wird.

bash -c "setsid /usr/bin/gtk-redshift -v -l 40.77:-73.9 -t 6500:5500 &>/home/mike/redshift.log"

Dies sind nur Beispieltesteinstellungen. Ersetzen Sie diese Werte durch Ihre eigenen. Möglicherweise möchten Sie den Befehl, der entsprechend geändert wurde, in einen Bash-Wrapper für Ihren Start-Eintrag einfügen, da die obige Befehlszeile ziemlich lang ist.

Ein Auszug aus dem Protokoll erstellt am /home/mike/redshift.log:

Gamma ramp size too small: 0
Failed to start adjustment method randr.
Trying next method...
Location: 40.770000, -73.900002
Brightness: 1.00
Gamma: 1.000, 1.000, 1.000
Using method `vidmode'.

Das Protokoll wird fortgesetzt und sollte die erforderlichen Informationen enthalten. Einige Programme wie vlchaben Optionen, die Sie einrichten können, damit ihre Protokollierung an Syslog gesendet werden kann. Ich bevorzuge jedoch, dass jedes Programm ein eigenes Protokoll hat.


quelle
Was passiert, wenn ein eingebautes Programm einen Fehler ausgibt? Zum Beispiel X-Window?
Demonguy
-2

Bitte überprüfen Sie /var/log/syslog. Es ist für alle Anwendungen gleich.

thefourtheye
quelle
Ich denke, ich hätte expliziter sein sollen. Ich habe / var / log / syslog bereits überprüft. Die fraglichen Startanwendungen nehmen keine Protokolleinträge in syslog vor. Ich sehe auch keine Protokolle von Startup Application-Skripten / Wrappern.
Adam Paetznick
Würde es Ihnen etwas ausmachen, die Anwendungsnamen offenzulegen?
thefourtheye
Wie in der Frage ausgeführt, ist der Haupttäter die Gtk-Rotverschiebung. Ebenfalls problematisch ist der google-musicmanager.
Adam Paetznick