2012-05-30 13 views
60

Nie mogę znaleźć miejsca, w którym przechowywany jest plik dziennika nodejs. Ponieważ na moim serwerze węzłów mam "Błąd segmentacji", chcę przejrzeć plik dziennika, aby uzyskać dodatkowe informacje ...Gdzie jest plik dziennika nodejs?

Odpowiedz

77

Brak pliku dziennika. Każda "aplikacja" node.js jest osobną jednostką. Domyślnie loguje błędy do STDERR i wyprowadza do STDOUT. Możesz to zmienić, gdy uruchomisz go ze swojej powłoki, aby zamiast tego logować się do pliku.

node my_app.js > my_app_log.log 2> my_app_err.log 

Alternatywnie (zalecane), można dodać rejestrowanie wewnątrz aplikacji ręcznie lub za pomocą jednej z wielu bibliotek dziennika:

17

forever może Cię zainteresować. Będzie uruchamiał twój plik .js 24/7 z opcjami rejestrowania. Oto dwa fragmenty z tekstu pomocy:

[Długa zakonczeniu] wiecznie proces będzie nadal działać wysyłania wiadomości dziennika do konsoli. np. zawsze -o out.log -e err.log moi-script.js

i

[Demon] wiecznie proces będzie działać jako demon, który pozwoli rozpocząć proces docelowy w tło. Jest to niezwykle przydatne do zdalnego uruchamiania prostych skryptów node.js bez użycia nohup. Zaleca się uruchomienie z -o -l, & -e. np. zawsze zaczynają -l forever.log -o out.log -e err.log moi-daemon.js zawsze zatrzymać My-daemon.js

1

Jeśli używasz docker w dev można to zrobić w innej powłoce : docker attach_node_app_container_name

To pokaże Ci STDOUT i STDERR.