需要使用自定义日志,记录一些特定的数据
// config
1,自定义日志 config.customerLogger
myLogger
2,log level级别为INFO
config.logger
level : 'INFO'
// controller
1,使用 ctx.getLogger('myLogger').info('my info')
// 问题
1,npm run dev
可以正常写到自定义日志文件中
2,npm start
不会写到自定义日志文件中
是我的配置或用法有什么问题吗? 请多指教!
5条答案
按热度按时间8hhllhi21#
start 是写到 home 目录了吧
xj3cbfub2#
start 是写到 home 目录了吧
谢谢回复!
1,自定义日志,文件目录仍然是系统目录 /app/logs,已检查写权限等没有问题
2,实际上,dev 方式运行时,是可以写日志的,只是 start 之后不写日志
3,看了脚本,dev / start 并没有什么差异
不知道还有没有其他问题?
jexiocij3#
start 是写到 home 目录了吧
谢谢回复!
1,自定义日志,文件目录仍然是系统目录 /app/logs,已检查写权限等没有问题 2,实际上,dev 方式运行时,是可以写日志的,只是 start 之后不写日志 3,看了脚本,dev / start 并没有什么差异
不知道还有没有其他问题?
建议你给出一个可以运行的demo或者把你default、local和prod的配置发一下
l7wslrjt4#
建议你给出一个可以运行的demo或者把你default、local和prod的配置发一下
多谢,相关文件内容如下:
config.logger = {
level: 'INFO', // NONE,DEBUG,INFO,WARN 和 ERROR 5 个级别
};
// 用户自定义日志
config.customLogger = {
dataLogger: {
file: path.join(appInfo.root, 'logs/data.log'),
},
};
this.ctx.getLogger('dataLogger').info("\n", uid, message, data, "\n\n");
"scripts": {
"start": "egg-scripts start --daemon",
"stop": "egg-scripts stop",
"dev": "egg-bin dev",
}
执行npm start,不写data.log
mu0hgdu05#
看 run/application_config.json 可以看到最终输出的日志地址。
在 start 的控制台日志上也有写的。
start 模式是写到 home 目录的,这个文档上有说明。