$ fluent-gem install fluent-plugin-slack
<match slack>
type slack
webhook_url https://hooks.slack.com/services/XXX/XXX/XXX
channel general
username sowasowa
icon_emoji :ghost:
flush_interval 60s
</match>fluent_logger.post('slack', {
:message => 'Hello<br>World!'
})<match slack>
type slack
slackbot_url https://xxxx.slack.com/services/hooks/slackbot?token=XXXXXXXXX
channel general
flush_interval 60s
</match>fluent_logger.post('slack', {
:message => 'Hello<br>World!'
})<match slack>
type slack
token xoxb-XXXXXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXX
channel general
username sowasowa
icon_emoji :ghost:
flush_interval 60s
</match>fluent_logger.post('slack', {
:message => 'Hello<br>World!'
})| parameter | description | default |
|---|---|---|
| webhook_url | Incoming Webhook URI (Required for Incoming Webhook mode). See https://api.slack.com/incoming-webhooks | |
| slackbot_url | Slackbot URI (Required for Slackbot mode). See https://api.slack.com/slackbot. NOTE: most of optional parameters such as username, color, icon_emoji, icon_url, and title are not available for this mode, but Desktop Notification via Highlight Words works with only this mode |
|
| token | Token for Web API (Required for Web API mode). See https://api.slack.com/web | |
| username | name of bot | nil |
| color | color to use such as good or bad. See Color section of https://api.slack.com/docs/attachments. NOTE: This parameter must not be specified to receive Desktop Notification via Mentions in cases of Incoming Webhook and Slack Web API |
nil |
| icon_emoji | emoji to use as the icon. either of icon_emoji or icon_url can be specified |
nil |
| icon_url | url to an image to use as the icon. either of icon_emoji or icon_url can be specified |
nil |
| mrkdwn | enable formatting. see https://api.slack.com/docs/formatting | true |
| link_names | find and link channel names and usernames. NOTE: This parameter must be true to receive Desktop Notification via Mentions in cases of Incoming Webhook and Slack Web API |
true |
| parse | change how messages are treated. none or full can be specified. See Parsing mode section of https://api.slack.com/docs/formatting |
nil |
| channel | channel to send messages (without first '#') | |
| channel_keys | keys used to format channel. %s will be replaced with value specified by channel_keys if this option is used | nil |
| title | title format. %s will be replaced with value specified by title_keys. title is created from the first appeared record on each tag. NOTE: This parameter must not be specified to receive Desktop Notification via Mentions in cases of Incoming Webhook and Slack Web API | nil |
| title_keys | keys used to format the title | nil |
| message | message format. %s will be replaced with value specified by message_keys | %s |
| message_keys | keys used to format messages | message |
| auto_channels_create | Create channels if not exist. Not available for Incoming Webhook mode (since Incoming Webhook is specific to a channel). A web api token for Normal User is required (Bot User can not create channels. See https://api.slack.com/bot-users) |
false |
| https_proxy | https proxy url such as https://proxy.foo.bar:443 |
nil |
fluent-plugin-slack uses SetTimeKeyMixin and SetTagKeyMixin, so you can also use:
| parameter | description | default |
|---|---|---|
| timezone | timezone such as Asia/Tokyo |
|
| localtime | use localtime as timezone | true |
| utc | use utc as timezone | |
| time_key | key name for time used in xxx_keys | time |
| time_format | time format. This will be formatted with Time#strftime. | %H:%M:%S |
| tag_key | key name for tag used in xxx_keys | tag |
fluent-plugin-slack is a kind of BufferedOutput plugin, so you can also use Buffer Parameters.
Currently, slack.com has following limitations:
- Desktop Notification via both Highlight Words and Mentions works only with Slackbot Remote Control
- Desktop Notification via Mentions works for the
textfield iflink_namesparameter is specified in cases of Incoming Webhook and Slack Web API, that is,
- Desktop Notification does not work for the
attachmentsfiled (used incolorandtitle) - Desktop Notification via Highlight Words does not work for Incoming Webhook and Slack Web API anyway
See CHANGELOG.md for details.
- Copyright:: Copyright (c) 2014- Keisuke SOGAWA
- License:: Apache License, Version 2.0