审核中~
溜忙之道
首页
溜忙手册
offer之道
项目Git
写文章
登录
·
注册
登录
没有账号,去注册
注册
已有账号,去登录
博客
node日志-log4js
南易_站长
阅读量:5796
关注
node日志-log4js
安装log4js ```js npm install log4js ``` 创建log.js ```js const path = require('path'); const log4js = require('log4js'); const logPath = process.env.LOG_PAHT || CONFIG.log.path, logType = CONFIG.log.type || 'info', logLevel = (CONFIG.log.level || 'all').toUpperCase(); // 自定义日志类别 log4js.configure({ appenders: [ { type: 'console', category: "console" }, // 控制台输出 { type: 'file', category: 'fileLog', filename: path.join(logPath, 'log.log'), maxLogSize: 104857600, backups: 100 }, // 单文件输出 { type: 'logLevelFilter', level: 'DEBUG', category: 'recordRequestTime', appender: { type: 'file', filename: path.join(logPath, 'time.log'), pattern: '-yyyy-MM-dd.log', alwaysIncludePattern: true, }, }, { type: 'logLevelFilter', level: 'DEBUG', category: 'recordUploadFileError', appender: { type: 'file', filename: path.join(logPath, 'upload.log'), pattern: '-yyyy-MM-dd.log', alwaysIncludePattern: true, }, }, { type: "dateFile", category: 'dateFileLog', filename: path.join(logPath, 'log'), pattern: "-yyyy-MM-dd.log", alwaysIncludePattern: true } // 日期格式文件输出 ], replaceConsole: true, //替换console.log levels: { console: 'ALL', fileLog: 'ALL', dateFileLog: 'ALL' } }); const logger = log4js.getLogger(logType || 'dateFileLog'); const getLogger = (type) => { return log4js.getLogger(type); } // 设置日志级别 logger.setLevel(logLevel.toUpperCase()); // 设置日志脱敏 logger.setMask(CONFIG.log.mask); exports.logger = logger; exports.getLogger = getLogger; exports.use = (app) => { app.use(log4js.connectLogger(logger, {level: 'info', format: ':method :url :status :response-timems'})); } ``` 创建系统配置文件 config/index.js ```js const config = { debug: true, log: { path: './', type: 'console', level: 'debug', mask: true } } module.exports = config; ``` 在入口文件 app.js 中添加全局LOG和CONFIG ```js // 系统配置 global.CONFIG = require('./config/index'); // 日志对象 const log = require('./log'); global.LOG = log.logger; global.TIMELOG = log.getLogger('recordRequestTime'); global.UPLOADERROR = log.getLogger('recordUploadFileError'); ``` 调用日志user.js ```js var express = require('express'); var router = express.Router(); const request = require('request'); /* GET home page. */ router.get('/', function(req, res, next) { res.render('index', { title: 'Express-test' }); }); // 接口 router.get('/gettest', (req, res, next) => { request.get({ url: `http-url`, json: req.body, headers:{ 'Content-Type': 'application/json', }, gzip:true, }, (err, response, body) => { LOG.info(body); // 调用日志 if (err) { res.json(err); } else { res.json(body); } }); }); module.exports = router; ```
评论
表情
发送
1
评论