Ich habe es für immer installiert und benutze es, finde es ziemlich lustig.
Aber mir wurde klar, dass die Protokolle woanders abgelegt werden. Gibt es irgendwelche Tipps?
Forever verwendet Befehlszeilenoptionen für die Ausgabe:
-l LOGFILE Logs the forever output to LOGFILE
-o OUTFILE Logs stdout from child script to OUTFILE
-e ERRFILE Logs stderr from child script to ERRFILE
Beispielsweise:
forever start -o out.log -e err.log my-script.js
Sehen Sie hier für weitere Informationen
forever myapp
? Vielen Dank!Für immer werden Protokolle standardmäßig in einer zufälligen Datei im
~/.forever/
Ordner abgelegt .Sie sollten ausführen
forever list
, um die ausgeführten Prozesse und die entsprechende Protokolldatei anzuzeigen.Beispielausgabe
Es ist jedoch wahrscheinlich am besten, mit zu spezifizieren,
-l
wie von bryanmac erwähnt.quelle
Wenn Sie den Befehl "Forever Logs" ausführen, können Sie sehen, wo sich die Protokolldateien befinden.
Quelle: https://github.com/foreverjs/forever
quelle
Versuchen Sie den Befehl
oder
Sie erhalten den Speicherort der Protokolldatei
quelle
Das hat bei mir funktioniert:
quelle
Um zu
forever start script.js
starten und um Konsolen- / Fehlerprotokolle zu überprüfen , müssen Sie normal vorgehen. Verwenden Sieforever logs
diese Option, um eine Liste aller Protokolle zu drucken, die für immer gespeichert sind. Anschließend können Sie sie verwenden.tail -f /path/to/logs/file.log
Dadurch werden Live-Protokolle in Ihr Fenster gedruckt. Drücken Sie Strg + Z, um den Druck der Protokolle zu stoppen.quelle
Es ist eine alte Frage, aber ich bin auf die gleichen Probleme gestoßen. Wenn Sie eine Live-Ausgabe sehen möchten, können Sie diese ausführen
Dies würde den Pfad der Protokolldatei sowie die Nummer des Skripts anzeigen. Sie können dann verwenden
0 sollte durch die Nummer des Skripts ersetzt werden, für das die Ausgabe angezeigt werden soll.
quelle
Hilfe ist Ihr bester Retter. Es gibt eine Protokollaktion, die Sie aufrufen können, um Protokolle für alle laufenden Prozesse zu überprüfen.
Zeigt die Befehle an
Beispielausgabe des obigen Befehls für drei laufende Prozesse. Die Ausgaben von console.log werden in diesen Protokollen gespeichert.
quelle
Standardmäßig werden alle benötigten Dateien für immer in /$HOME/.forever abgelegt. Wenn Sie diesen Speicherort ändern möchten, legen Sie einfach die Umgebungsvariable FOREVER_ROOT fest, wenn Sie für immer ausgeführt werden:
quelle
Sie müssen die Protokollzielspezifizierer vor dem auszuführenden Dateinamen hinzufügen. So
für immer -e /path/error.txt -o /path/output.txt start index.js
quelle
Basierend auf Bryanmacs Antwort. Ich speichere nur alle Protokolle in einer Datei und lese sie dann mit dem Schwanz. Einfache, aber effektive Möglichkeit, dies zu tun.
forever -o common.log -e common.log index.js && tail -f common.log
quelle