Я использую forever в течение длительного времени, но в последнее время он начал вести себя немного странно: все в порядке, за исключением журналов.Forever обрезает журналы
Раньше я использовал forever start /path/to/app.js
, и все было хорошо. Даже для огромных бревен (1-2 концерта).
Но в настоящее время у меня есть приложение, очень загруженное веб-приложение, и журнал усекается каждые 3-4 часа. Размер не такой большой, на самом деле 80-120 мегабайт.
Поняв это, я решил попробовать (безуспешно), начиная с навсегда с опциями: forever --append -o /path/to/out.log -e /path/to/error.log start /path/to/app.js
, но проблема не устранена.
Я действительно не знаю, что делать. Любые мысли ??? Спасибо!
Версии:
- узел v0.12.7
- НПМ 2.11.3
- навсегда v0.15.1
- 3.16.0-4-amd64 # 1 SMP Debian 3.16.7-ckt11- 1 + deb8u6 (2015-11-09) x86_64 GNU/Linux
Update1:
- BTW: у меня есть много жесткого диска памяти доступны
UPDATE2:
я нашел связанный Issue (https://github.com/foreverjs/forever/issues/106#issuecomment-116933382) и на букву тестирования с помощью следующей команды: forever -a -l >(logger -t fileteTrackchile) start /path/to/app.js
До сих пор так хорошо, но будет хранить информацию журнала в /var/log/user.log
, /var/log/syslog
и /var/log/messages
. Это одна и та же информация, поэтому было бы лучше сохранить ее только один раз.
Я оставлю его работать в течение нескольких дней и посмотреть, работает оно или нет.
Update3 (FINAL):
Проблема не имеет ничего общего с вечно, и Winston. Я не понимал, что файлы были настолько большими, что просмотрщик журналов только показывал его часть. Запутанная часть состоит в том, что первая строка (прошлое) была усечена зрителем (OSX Console), что заставило меня думать, что сам файл был усечен.
Большое спасибо, это сработало! но у меня все еще есть две большие проблемы; 1) если я перезапущу приложение, мне нужно перезапустить rsyslog, а для последнего мне нужны права root, что делает все более сложным с оперативной точки зрения, и 2) я вообще не использовал logrotate, на самом деле я использовал местоположение по умолчанию для logs /home/someUser/.forever, чтобы сохранить их в первую очередь. Это было идеальным решением для меня, пока эта проблема усечения не возникла. – nico
Никогда не нужно перезапускать rsyslog. Вам не нужно использовать logrotate для управления вращением журнала. Вы можете повернуть свои журналы, как вам нравится. –