loopback-component-winston

0.0.3 • Public • Published

loopback-component-winston

Creates winston logger based on configuration in component-config.json file. Here is a small example to illustrate:

{
    ...
    "loopback-component-winston": {
        "level": "verbose",
        "transports": [
            {
                "type": "Console",
                "json": true
            }, {
                "type": "File",
                "name": "info-file",
                "filename": "error.log",
                "level": "info"
            }, {
                "type": "File",
                "name": "error-file",
                "filename": "error.log",
                "level": "error"
            }
        ]
    }
    ...
}

The configuration above creates an instance of winston.Logger and binds it to a globally accessible app.log property. The type property of transport descriptors denotes the name of the class in winston.transports scope.

requestLogger Middleware

The component comes with a request logging middleware. Bellow is an example of how it can be connected.

# middleware.json
{
    ...
    "routes": {
        "loopback-component-winston#requestLogger": {
            "params": {
                "level": "info",
                "msg": "${res.statusCode} ${req.method} ${res.time}ms ${req.decodedUrl}",
                "meta": false
            }
        },
        ...
    }
    ...
}

Available options:

  • level [String] log level to report request
  • msg [String] message template
  • meta [Boolean] whether or not to include request/response meta information such as headers, body, query...

Package Sidebar

Install

npm i loopback-component-winston

Weekly Downloads

60

Version

0.0.3

License

MIT

Unpacked Size

15 kB

Total Files

15

Last publish

Collaborators

  • 6river-machine