要通过日志监控 Debian 上的 Node.js 服务状态,您可以遵循以下步骤:
确保您的 Node.js 应用程序正在运行并记录日志。您可以使用像 console.log()
、winston
或 morgan
这样的库来记录日志。
将日志输出到文件。在您的 Node.js 应用程序中,配置日志库以便将日志写入到文件中。例如,如果您使用的是 winston
,可以这样配置:
const winston = require('winston');
const logger = winston.createLogger({
level: 'info',
format: winston.format.json(),
transports: [
new winston.transports.File({ filename: 'error.log', level: 'error' }),
new winston.transports.File({ filename: 'combined.log' })
]
});
systemd
服务。创建一个名为 your-nodejs-app.service
的文件,将其放在 /etc/systemd/system/
目录下,并添加以下内容:[Unit]
Description=Node.js Application
After=syslog.target network.target
[Service]
User=<your-user>
WorkingDirectory=/path/to/your/nodejs/app
ExecStart=/usr/bin/env node /path/to/your/nodejs/app/app.js
Restart=always
Environment=NODE_ENV=production
Environment=PATH=/usr/bin:/usr/local/bin
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=<your-nodejs-app>
[Install]
WantedBy=multi-user.target
确保将 <your-user>
、/path/to/your/nodejs/app
和 <your-nodejs-app>
替换为实际值。
systemd
配置并启动服务:sudo systemctl daemon-reload
sudo systemctl start your-nodejs-app.service
journalctl
命令查看 Node.js 应用程序的日志:sudo journalctl -u your-nodejs-app.service -f
这将显示实时更新的日志。您还可以使用以下命令查看特定时间段的日志:
sudo journalctl -u your-nodejs-app.service --since "2021-09-01" --until "2021-09-30"
通过这些步骤,您可以监控 Debian 上的 Node.js 服务状态并查看其日志。