在 Ubuntu 上“开启 Node.js 日志”通常分几种情况,下面按常见场景给你说明,你可以按需选择。
Node.js 本身不会自动写日志文件,需要你在代码里输出日志。
console.log('服务启动');
console.error('出错了');
运行:
node app.js
日志会直接输出到终端。
node app.js > app.log 2>&1
>:标准输出2>&1:错误也写入查看日志:
tail -f app.log
sudo npm install -g pm2
pm2 start app.js
pm2 logs
~/.pm2/logs/
pm2 startup
pm2 save
sudo nano /etc/systemd/system/node-app.service
示例:
[Unit]
Description=Node.js App
After=network.target
[Service]
ExecStart=/usr/bin/node /home/ubuntu/app.js
WorkingDirectory=/home/ubuntu
User=ubuntu
Restart=always
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=node-app
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl start node-app
sudo systemctl enable node-app
journalctl -u node-app -f
DEBUG=* node app.js
NODE_DEBUG=http,net node app.js
winston / pino 写结构化日志如果你能告诉我:
我可以给你更精确的配置示例。