spee.ch/config/slackConfig.js

31 lines
1.1 KiB
JavaScript
Raw Normal View History

2017-11-06 15:18:45 -08:00
const config = require('./speechConfig.js');
const winstonSlackWebHook = require('winston-slack-webhook').SlackWebHook;
module.exports = (winston) => {
2017-11-06 15:18:45 -08:00
if (config.logging.slackWebHook) {
// add a transport for errors to slack
2017-09-25 08:49:28 -07:00
winston.add(winstonSlackWebHook, {
name : 'slack-errors-transport',
level : 'warn',
2017-11-06 15:18:45 -08:00
webhookUrl: config.logging.slackWebHook,
channel : config.logging.slackErrorChannel,
2017-09-25 08:49:28 -07:00
username : 'spee.ch',
iconEmoji : ':face_with_head_bandage:',
});
winston.add(winstonSlackWebHook, {
name : 'slack-info-transport',
level : 'info',
2017-11-06 15:18:45 -08:00
webhookUrl: config.logging.slackWebHook,
channel : config.logging.slackInfoChannel,
2017-09-25 08:49:28 -07:00
username : 'spee.ch',
iconEmoji : ':nerd_face:',
});
2017-11-06 15:18:45 -08:00
// send test message
winston.error('Slack "error" logging is online.');
winston.warn('Slack "warning" logging is online.');
winston.info('Slack "info" logging is online.');
2017-09-25 08:49:28 -07:00
} else {
winston.warn('Slack logging is not enabled because no SLACK_WEB_HOOK env var provided.');
2017-09-25 08:49:28 -07:00
}
};