温馨提示×

debian中nodejs日志如何开启

小樊
43
2026-09-10 04:51:09
栏目: 编程语言

在 Debian 系统中,“开启 Node.js 日志”通常有以下几种场景,下面分别说明:


一、Node.js 应用自身日志(最常见)

Node.js 本身不自动写日志文件,日志需要你在代码中输出,例如:

1. 使用 console(最简单)

console.log('服务启动');
console.error('出错了');

运行:

node app.js

查看:

node app.js > app.log 2>&1

2. 使用日志库(推荐)

常用库:

  • winston
  • pino
  • log4js

示例(winston):

npm install winston
const winston = require('winston');

const logger = winston.createLogger({
  transports: [
    new winston.transports.File({ filename: 'app.log' })
  ]
});

logger.info('应用启动');

二、通过 systemd 管理 Node.js(Debian 推荐方式)

如果是用 systemd 启动 Node.js 服务,日志由 journald 管理。

1. 创建 service 文件

sudo nano /etc/systemd/system/nodeapp.service

示例:

[Unit]
Description=Node.js App
After=network.target

[Service]
ExecStart=/usr/bin/node /var/www/app/app.js
WorkingDirectory=/var/www/app
User=www-data
Restart=on-failure

[Install]
WantedBy=multi-user.target

2. 启动并开启日志

sudo systemctl daemon-reload
sudo systemctl start nodeapp
sudo systemctl enable nodeapp

3. 查看日志(自动开启)

journalctl -u nodeapp -f

三、Nginx + Node.js 日志(反向代理场景)

如果你用 Nginx:

sudo tail -f /var/log/nginx/access.log
sudo tail -f /var/log/nginx/error.log

四、PM2 管理 Node.js(生产常用)

npm install -g pm2
pm2 start app.js
pm2 logs

日志默认在:

~/.pm2/logs/

五、开启 Node.js 调试日志(高级)

NODE_DEBUG=* node app.js

或指定模块:

NODE_DEBUG=http,net node app.js

总结建议

场景 推荐方式
本地开发 console / pino
生产服务 systemd + journalctl
多进程 PM2
Web 服务 Nginx 日志

如果你能说明:

  • 是否用 systemd
  • 是否用 Nginx
  • Node 版本
  • 是否生产环境

我可以给你更精确的配置示例。

0