Supervisor: Deaktivieren der Dateiprotokollierung

Erstellt am 20. Sept. 2018  ·  3Kommentare  ·  Quelle: Supervisor/supervisor

Ist es möglich, die Dateiprotokollierung eines Programms zu deaktivieren, aber die Ausgabe im Vordergrund zu sehen ( supervisorctl fg <program> )? Ich habe versucht, stdout_logfile=/dev/null , aber die Ausgabe wurde nicht im Vordergrund angezeigt.
Diese Funktion wäre praktisch, wenn ich zum Beispiel die Protokolle nicht behalten möchte, aber sehen möchte, was gerade passiert.

logging

Alle 3 Kommentare

Sie müssen nichts tun, behalten Sie einfach den Standardwert von stdout_logfile und dann supervisorctl tail -f <program> zu sehen, was gerade passiert .

Für Ihre andere Notwendigkeit: "Ich möchte die Protokolle nicht behalten" finden Sie die Protokolldatei in /tmp/ wenn Sie stdout_logfile Standard beibehalten. Normalerweise wird der /tmp/ Pfad von tmpfs gemountet (https://en.wikipedia.org/wiki/Tmpfs), also…… möchten Sie es?

@cupen Was Sie grundsätzlich vorgeschlagen haben, ist, Protokolldateien im Verzeichnis /tmp zu speichern. Das habe ich nicht gefragt.
Außerdem ist /tmp/ kein Standardverzeichnis für Protokolldateien in Supervisor, und es ist ein schlechter Ratschlag, Protokolle auf tmpfs zu speichern, da es RAM-Speicherplatz belegt.

Ist es möglich, die Dateiprotokollierung eines Programms zu deaktivieren, aber die Ausgabe im Vordergrund zu sehen (supervisorctl fg)?

Nein, denn intern verwendet der Befehl fg denselben Mechanismus wie der Befehl tail , der das Protokoll von der Festplatte liest. Sie können stdout_logfile_maxbytes auf eine niedrige Zahl (z. B. 1K) und stdout_logfile_backups auf 0 setzen, um zu verhindern, dass viel Speicherplatz belegt wird. Es würde viel Mühe kosten, die Funktionsweise von fg zu ändern. Es ist unwahrscheinlich, dass wir dies ändern, da es eine Problemumgehung gibt.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen