Skip to content

cabinjs/slack-winston

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

slack-winston

NPM version NPM downloads MIT License

A Slack transport for winston.

NOTE: This package was created because winston-slack did not have similar code structure to winston-hipchat (switched from using HipChat → Slack and wanted consistency).

Index

Install

npm install -S winston slack-winston

Usage

var winston = require('winston')
var slackWinston = require('slack-winston').Slack

var options = {
  domain: 'my-domain',
  token: 'my-slack-incoming-webhook-token',
  webhook_url: 'my-slack-incoming-webhook-url',
  channel: 'general',
  level: 'warn'
}

winston.add(slackWinston, options)

Many options can be seen in the Slack API docs.

  • level: Level of messages that this transport should log
  • silent: If true, will not log messages
  • token: Required. Slack incoming webhook token
  • webhook_url: Required. Slack incoming webhook url.
  • channel: Required. Channel of chat (e.g. "#foo" or "@foo")
  • domain: Required. Domain of Slack (e.g. "foo" if "foo.slack.com")
  • username: Username of the incoming webhook Slack bot (defaults to "Winston")
  • icon_emoji: Icon of bot (defaults to 🎩 :tophat:)
  • message: lodash templates. Gets passed the {{message}}, {{level}}, and {{meta}} as a JSON string. If not specified, it will print a default of {{message}}\n\n{{meta}}. Note that this gets sent as the text field in the payload per Slack requirements.
  • queueDelay: Delay time (ms) between messages in queue (defaults to 500)

Credits

License

MIT