An OVH Logs data platform transport for NodeJS Winston logger.
tldr;?
: To break the winston codebase into small modules that work
together.
The winston codebase has been growing significantly with contributions and other logging transports. This is awesome. However, taking a ton of additional dependencies just to do something simple like logging to the Console and a File is overkill.
npm install --save winston-ovh
import { createLogger, transports } from 'winston'
import ovhTransporter from 'winston-ovh'
const logger = createLogger({
level: 'silly',
transports: [
new transports.Console(),
new ovhTransporter({
host: 'graxxx.logs.ovh.com',
token: 'YOUR_TOKEN',
level: 'silly'
})
]
})
logger.error('test error', { some: true })
logger.warn('test warn', { myField: 'test' })
logger.info('test info', { myNumber: 50 })
logger.debug('test debug')
logger.verbose('test verbose', { place: '48.4070554,-4.495554' })
logger.silly('test silly')
The ovh transport takes the following options. 'token' is required:
- token: Logs data platform key
- level: Level of messages that this transport should log, defaults to 'debug'
- host: Logs data platform endpoint
Due to LAAS naming conventions, all meta data must be suffixing with his type. Ex: myBool => myBool_bool myNumber => myNumber_int
Don't take care of it, winston-ovh will suffix your data