【Express】创建输出日志中间件(log4js)

js 复制代码
const log4js = require('log4js')
//日志输出 控制台输出,文件也要输出
log4js.configure({
    appenders: {
        // 控制台输出
        out: {
            type: 'stdout',
            layout: {
                type: 'colored'
            }
        },
        //文件输出
        file: {
            filename: 'logs/server.log',
            type: 'file'
        }
    },
    categories: {
        default: {
            appenders: ['out', 'file'],
            level: 'debug'
        }
    }
})
const logger = log4js.getLogger('default')
const LoggerMiddleware = (req, res, next) => {
    logger.debug(`[${req.method}] -- ${req.url}`)
    next()
}

module.exports = LoggerMiddleware
js 复制代码
const LoggerMiddleware = require('./middleware/logger.js')
app.use(LoggerMiddleware)


相关推荐
喵了几个咪7 小时前
Kratos 生态双定时器中间件:高精度 hptimer 与标准 cron 选型与实践
微服务·中间件·架构·golang·kratos
lifewange9 小时前
常用中间件压力测试命令(极简速查)
中间件·压力测试
喵了几个咪11 小时前
Kratos KCP 传输中间件:游戏开发低延迟网络通信实战指南
微服务·中间件·golang·游戏开发·kratos
喵了几个咪12 小时前
Kratos WebRTC 传输中间件:H5游戏P2P实时音视频与数据通信实战
游戏·微服务·中间件·golang·webrtc·实时音视频·kratos
许彰午1 天前
Tomcat漏洞修复升级——被遗忘的中间件安全
安全·中间件·tomcat
BUG制造者:图图2 天前
MiMo 模型 Tool Calls 400 报错终极解决方案——Reasoning Content 代理中间件
中间件·代理模式·mimo·小米模型
逍遥德2 天前
SpringBoot自带TaskScheduler 接口实现定时任务的动态增、删、启、停。
java·spring boot·后端·中间件
lifewange2 天前
中间件细致控制原理 + 可编程实操
中间件
小陶来咯2 天前
aimrt中间件的使用
开发语言·qt·中间件
fuquxiaoguang2 天前
架构模式革新:用“旁路镜像”改造老旧系统——中间件驱动的渐进式AI落地范式
人工智能·中间件·架构