Skip to content

dominhhai/koa-log4js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

koa-log4js

A wrapper for log4js-node which support Koa logger middleware. Log message is forked from Express (Connect) logger file.

Note

This branch is use to Koa v2.x. To use Koa v0.x & v1.x, please check the master branch.

Installation

for koa v0.x & v1.x

$ npm i --save koa-log4@1

for koa v2.x

$ npm i --save koa-log4@2

The default logger is for koa v2.x

$ npm i --save koa-log4

Usage

Config koa-log4js is same as the original log4js-node.

Normal log4js way

This way is same as the original log4js-node.

const log4js = require('koa-log4')

const log = log4js.getLogger('index')
log.info('index do some awesome things')

Koa-middleware way

Similar to use Express (Connect) logger middleware.

const log4js = require('koa-log4')
app.use(log4js.koaLogger(log4js.getLogger("http"), { level: 'auto' }))

There are more configuration options:

const log4js = require("koa-log4")
app.use(log4js.koaLogger(
    // the logger to log to
    log4js.getLogger("http"),
    // the options object
    {
        // select the level all access logs will be set to, or use "auto" to choose depending on the status code (see next option)
        level: "auto",
        // if `level` is set to "auto" the default rule will map 200-299 to INFO, 300-399 to WARN and 400-599 to ERROR.
        // you can override this behavior by setting your own custom levelMapper.
        // (the example is the default implementation, do not copy unless you want to modify it)
        levelMapper: function(statusCode) {
            if (statusCode >= 400)
                return levels.ERROR
            if (statusCode >= 300)
                return levels.WARN
            return levels.INFO
        }
    }
))

Full Example

Check this repo for full example with Koa v2.

Others

See here for more info.