pino-splunk-events
v0.0.11
Published
Pino transport layer to splunk-events
Downloads
68
Readme
pino-splunk-events
Install
$ npm install pino-splunk-events
Usage
$ node app.js | npx pino-splunk-events --endpoint=YOUR_SPLUNK_ENDPOINT --token=YOUR_SPLUNK_TOKEN
Node (development mode)
import { PrettyConsole } from 'pino-splunk-events/lib/core/PrettyConsole'
const logger = pino({
prettyPrint: {
messageFormat: PrettyConsole.messageFormat,
},
})
Browser (production mode)
import { getPinoBrowserWriteLog } from 'pino-splunk-events/lib/browser'
import SplunkEvents from 'splunk-events'
import pino from 'pino'
const splunk = new SplunkEvents({
endpoint: process.env.SPLUNK_ENDPOINT,
token: process.env.SPLUNK_TOKEN,
// IMPORTANT! You need to set this flag
// to permit send nested data to splunk
// otherwise it will fails when try to
// send some log with nested data
shouldParseEventData: false,
})
const logger = pino({
browser: {
write: getPinoBrowserWriteLog(splunk),
},
})
Browser (development mode)
import { PrettyConsole } from 'pino-splunk-events/lib/core/PrettyConsole'
import pino from 'pino'
const logger = pino({
browser: {
write: PrettyConsole.print,
},
})
Table logs level to splunk
| Log Level | Splunk Query | | --------- | -------------------------- | | trace | level=Debug type=Info | | debug | level=Debug type=Info | | info | level=Important type=Info | | warn | level=Important type=Warn | | error | level=Important type=Error | | fatal | level=Critical type=Error |
Running example
# terminal 1
$ yarn install
$ cd example && yarn install
# starts fake splunk server
$ yarn server:start
# terminal 2
# sends events to fake splunk server
$ yarn logger:start
Deploy / Release new tags
Use npx chan added|fixed|etc "my change"
And after setting a changelog, run:
yarn release
License
Released under MIT License.