This project aim to create a transport for winston 3.0.0 that send error to sentry.
import winston from 'winston'
import { SentryTransport } from 'winston-node-sentry'
let opts = {
level: 'info',
sentryOpts: {
dsn: 'YOUR-DSN'
}
}
const logger = winston.createLogger({
level: 'info',
format: winston.format.json(),
defaultMeta: { service: 'user-service' },
transports: [
new SentryTransport(opts)
]
})
Some default behavor is set feel free to see in code
You can pass some options to SentryTransport
{
debug: false,
level: 'info',
init: true,
sentry: NodeSentryModule,
sentryOpts: {},
sentryScope: (scope) => {}
}
Used to log each action of logger and error
Equivalent to winston level sentry will log error if level is same or below
This options is to set if winston-node-sentry must init @node/sentry
module,
or if user want to do it.
Is an @node/sentry
object that can be used internally, if not passed
winston-node-sentry will create his own
Options passed to @node/sentry
see docs to get some more infos
Default custom scope function that can be set by winston-node-sentry when it
init @node/sentry
First of all you must install package
$ yarn install
You can build source to javascript
$ yarn build
or you can generate sourceMap with it
$ yarn build:debug
When you're working on this module you can watch it
$ yarn watch
You can test if this modules works with sentry instance inside this repository
Start sentry instance
$ ./sentry/scripts/up.sh
Get sentry DSN
$ ./sentry/extract_dsn.py
Copy DSN inside test file
And execute tests
$ yarn test
This is written in typescript and use standard linter.
We use ts-lint
as linter with standard configuration, please if you submit
any pull respect lint you can check it
$ npm run lint