在Ubuntu上使用Node.js实现日志自动化处理,可以通过以下几个步骤来完成:
curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs
app.js
的文件。在这个文件中,我们将编写一个简单的日志记录应用程序。const fs = require('fs');
const path = require('path');
const logFolder = path.join(__dirname, 'logs');
if (!fs.existsSync(logFolder)) {
fs.mkdirSync(logFolder);
}
const logFile = path.join(logFolder, 'app.log');
function log(message) {
const timestamp = new Date().toISOString();
const logEntry = `${timestamp} - ${message}\n`;
fs.appendFile(logFile, logEntry, (err) => {
if (err) throw err;
});
}
log('Hello, World!');
这个简单的应用程序会在logs
文件夹中创建一个名为app.log
的日志文件,并在其中记录一条消息。
sudo npm install pm2 -g
接下来,使用PM2启动你的Node.js应用程序:
pm2 start app.js
ecosystem.config.js
的文件,其中包含以下内容:module.exports = {
apps: [
{
name: 'my-app',
script: 'app.js',
instances: 'max',
autorestart: true,
watch: false,
max_memory_restart: '1G',
env: {
NODE_ENV: 'development',
},
env_production: {
NODE_ENV: 'production',
},
},
],
};
现在,使用以下命令启动你的应用程序,并启用日志轮转:
pm2 start ecosystem.config.js --env production
PM2将自动处理日志文件,使其保持在一个合适的大小,并在需要时创建新的日志文件。
pm2 logs my-app
pm2 logs my-app --lines 100
pm2 clear my-app
通过以上步骤,你可以在Ubuntu上使用Node.js实现日志自动化处理。