在Ubuntu系统中,可以使用systemd
服务来自动化处理Node.js应用程序的日志。以下是如何创建一个systemd
服务单元文件来管理Node.js应用程序的日志的步骤:
app.js
文件,如下所示:const express = require('express');
const app = express();
const port = 3000;
app.get('/', (req, res) => {
res.send('Hello World!');
});
app.listen(port, () => {
console.log(`Example app listening at http://localhost:${port}`);
});
nodejs-app.service
的systemd
服务单元文件:sudo nano /etc/systemd/system/nodejs-app.service
nodejs-app.service
文件中,根据需要进行修改:[Unit]
Description=Node.js Application
After=network.target
[Service]
User=<your-user>
WorkingDirectory=/path/to/your/nodejs/app
ExecStart=/usr/bin/node /path/to/your/nodejs/app/app.js
Restart=always
Environment=NODE_ENV=production
Environment=PORT=3000
[Install]
WantedBy=multi-user.target
确保将<your-user>
替换为运行Node.js应用程序的用户,将/path/to/your/nodejs/app
替换为你的Node.js应用程序的实际路径。
保存并关闭文件。
通过以下命令重新加载systemd
守护程序:
sudo systemctl daemon-reload
sudo systemctl start nodejs-app
sudo systemctl enable nodejs-app
journalctl
命令:sudo journalctl -u nodejs-app -f
这将显示Node.js应用程序的实时日志。你可以随时使用Ctrl + C
停止实时日志查看。
通过以上步骤,你已经成功创建了一个systemd
服务来管理Node.js应用程序,并自动化处理日志。