Skip to content

kolach/loopback-component-winston

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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...

About

globally accesible (via app.log) winston logger

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •