在Ubuntu上使用Node.js实现日志分割,可以使用pm2
这个进程管理器。pm2
可以帮助你管理Node.js应用程序的运行、监控日志以及实现日志分割。以下是使用pm2
实现日志分割的步骤:
首先,确保你已经安装了Node.js和npm。如果没有,请访问Node.js官网下载并安装。
使用npm全局安装pm2
:
npm install pm2 -g
启动你的Node.js应用程序。例如,如果你的应用程序入口文件是app.js
,可以使用以下命令启动:
pm2 start app.js
pm2
会自动为你的应用程序创建一个名为ecosystem.config.js
的配置文件。你可以在这个文件中配置日志分割的相关选项。例如:
module.exports = {
apps: [
{
name: 'my-app',
script: 'app.js',
instances: 'max',
exec_mode: 'cluster',
autorestart: true,
watch: false,
max_memory_restart: '1G',
env: {
NODE_ENV: 'development',
},
env_production: {
NODE_ENV: 'production',
},
},
],
};
在ecosystem.config.js
文件中,添加log_date_format
和out_file
选项来自定义日志的时间格式和输出文件。例如:
module.exports = {
// ...
log_date_format: 'YYYY-MM-DD HH:mm:ss',
out_file: './logs/out.log',
error_file: './logs/error.log',
combine_logs: true,
// ...
};
这里,我们将日志输出到./logs/out.log
文件,错误日志输出到./logs/error.log
文件,并将标准输出和标准错误合并到一个日志文件中。
使用pm2
重新启动你的应用程序:
pm2 restart app
现在,你的Node.js应用程序的日志将会按照指定的格式和时间分割。你可以随时查看./logs
目录下的日志文件。