Skip to content

log4js-node/hipchat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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 - @log4js-node/hipchat
  • hipchat_token - string - User token with notification privileges
  • hipchat_room - string - Room ID or name
  • hipchat_from - string (optional, defaults to empty string) - a label to say where the message is from
  • hipchat_notify - boolean (optional, defaults to false) - make hipchat annoy people
  • hipchat_host - string (optional, defaults to api.hipchat.com) - set this if you have your own hipchat server
  • hipchat_response_callback - function (optional, defaults to only throwing errors) - implement this function if you want intercept the responses from hipchat
  • layout - (optional, defaults to messagePassThroughLayout) - see layouts

Example (default config)

log4js.configure({
  appenders: {
    squawk: { type: '@log4js-node/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: '@log4js-node/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' }
  }
});