Hipchat Appender for Log4JS
This is an optional appender for log4js.
npm install @log4js-node/hipchat
The hipchat appender will send every log message it receives to a hipchat server, over HTTP. It uses the hipchat-notifier library. If you're not sure what some of the configuration options below mean, then check the documentation for hipchat-notifier, and the hipchat docs themselves.
Configuration
type
- hipchat
hipchat_token
- string
- User token with notification privilegeshipchat_room
- string
- Room ID or namehipchat_from
- string
(optional, defaults to empty string) - a label to say where the message is fromhipchat_notify
- boolean
(optional, defaults to false
) - make hipchat annoy peoplehipchat_host
- string
(optional, defaults to api.hipchat.com
) - set this if you have your own hipchat serverhipchat_response_callback
- function
(optional, defaults to only throwing errors) - implement this function if you want intercept the responses from hipchatlayout
- (optional, defaults to messagePassThroughLayout
) - see layouts
Example (default config)
log4js.configure({
appenders: {
squawk: { type: 'hipchat', hipchat_token: 'abc123', hipchat_room: 'ops' }
},
categories: {
default: { appenders: ['squawk'], level: 'error'}
}
});
This will result in all error (and above) messages being sent to the hipchat room "ops".
Example (use all the options!)
log4js.configure({
appenders: {
squawk: {
type: 'hipchat',
hipchat_token: 'abc123',
hipchat_room: 'things_are_on_fire',
hipchat_from: 'Hal9000',
hipchat_notify: true,
hipchat_host: 'hipchat.yourorganisation.com',
hipchat_response_callback: function(err, response) {
console.log("I got a response from hipchat: ", response);
}
}
},
categories: {
default: { appenders: ['squawk'], level: 'info' }
}
});