0.3.0 • Published 8 years ago
winston-slack-hook v0.3.0
winston-slack-hook

Slack WebHook transport for Winston logger library
Install
$ npm install --save winston winston-slack-hookRequirements
- Use winston
- Set up Slack incoming webhook
Usage
Basic
var winston = require('winston');
var SlackHook = require('winston-slack-hook');
var Logger = winston.Logger;
var Console = winston.transports.Console;
var logger = new Logger({
transports: [
new Console({}),
new SlackHook({
hookUrl: 'https://hooks.slack.com/services/XXX/YYY/ZZZ',
username: 'bot',
channel: '#logs'
})
]
});
logger.info('I am being logged here'); // will be sent to both console and SlackOptions
Require:
hookUrl: Slack URL to post tousername: Message will be posted as this usernamechannel: The channel to post in
Optional:
iconEmoji: Give the username an emoji as an avatarprependLevel: set totrueby default, sets[level]at the beginning of the messageappendMeta: set totrueby default, sets stringifiedmetaat the end of the messageformatter(options): function for transforming the message before posting to Slackcolors: set to{}by default (no colors), set the color of the message given a level.
Formatter and colors
Messages can be formatted further before posting to Slack:
var logger = new Logger({
transports: [
new SlackHook({
hookUrl: 'https://hooks.slack.com/services/XXX/YYY/ZZZ',
username: 'bot',
channel: '#logs',
formatter: function (options) {
var message = options.message; // original message
// var level = options.level;
// var meta = options.meta;
// do something with the message
return message;
},
colors: {
warn: 'warning',
error: 'danger',
info: 'good',
debug: '#bbddff'
}
})
]
});License
MIT © Fahad Ibnay Heylaal