如题描述,以下是配置文件,求大神解答困然已久问题: 1. bin下start.sh脚本 pm2 start /export/server/xxxx/process.json --env production 2. process.json文件 { “apps”: [{ “name”: “”, “script”: “/export/server/xxx/server.js”, “instance_var”: “INSTANCE_ID”, “exec_mode”: “cluster”, “instances”: “max”, “log_date_format”: “YYYY-MM-DD HH:mm Z”, “merge_logs”: true, “out_file” : “/export/log/xxx/ious_out.log”, “error_file” : “/export/log/xxx/ious_error.log”, “env”: { “NODE_ENV”: “development” }, “env_production”: { “NODE_ENV”: “production” } }], “deploy”: {
} }
3. log4js配置文件
log4js.configure({
appenders: {
iwallet: {
type: ‘dateFile’,
filename: ‘/export/log/xxxx/’,
pattern: “node/yyyyMMdd.log”,
alwaysIncludePattern: true,
},
},
categories: {
default: {
appenders: [‘iwallet’],
level: ‘info’
}
},
pm2: true,
pm2InstanceVar: ‘INSTANCE_ID’
});
const logger = log4js.getLogger(‘iwallet’);
4. 服务器
使用pm2-intercom模块
@jizhuofeng 求教,已经安装了,还需要怎么使用一下呢
安装了这个模块之前启动你的应用就可以了呀
哈哈,又有人踩到坑了,PM2
的cluster
下不要用 log4js
,推荐使用 winston
,搭配 winston-daily-rotate-file
,完美解决日志打印
@jizhuofeng 我已经启动了,通过请教别人,可能是我PM版本过低导致的
@huqiyang 是的,这个坑,深坑。您现在用的是winston嘛
@datura-lj 对,改成winston
winston文档
@huqiyang 你好 ,再请教下,winston 怎么按天分割日志呢
@jizhuofeng 这个模块不安装也能使用,还是配置配的不对导致的。 pm2的github issue有这个问题的解决方案。