Как я могу сохранить любой вывод из программы узла в определенный файл? - PullRequest
1 голос
/ 26 декабря 2011

Я запускаю свою нодовую программу, как это

sudo NODE_ENV=production node app.js&

Видимо, все работает нормально и работает, даже если терминал закрыт. Если терминал, на котором запущена программа, открыт, вывод будет показан на терминале.

Иногда выводятся некоторые данные, однако я не вижу их, если исходный терминал не был открыт, и пока я не жду вывода в течение 24 часов на полную ставку.

Как я могу перенаправить каждый вывод строки из программы в определенный файл? так что я смогу выяснить возможную причину исключения или неожиданного завершения программы узла?

Ответы [ 3 ]

3 голосов
/ 26 декабря 2011

просто нажмите на >> file

sudo NODE_ENV=production node app.js >> log.txt &
0 голосов
/ 28 января 2015

использовать навсегда например -

forever start -l forever.log -o out.log -e err.log my-daemon.js

, где

-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

Здесь вы можете найти всю необходимую документацию.

0 голосов
/ 26 декабря 2011
sudo nohup node app.js > app_logs.out

Вы также можете использовать NODE_ENV=production в приведенном выше примере, если хотите. nohup означает «без зависания».

Ресурсы:

Node.js в качестве фоновой службы
sudo nohup nice <- в каком порядке? </a>

...