NagiosとSlackの連携時、Channelを指定する
NagiosとSlackの連携時、Channelを指定する
NagiosとSlackの連携は検索すれば出てくるものの、Channelが固定だったので、Nagiosのcontact毎に指定する方法を記載します。環境
- Slack
- Ubuntu 16.04
- Nagios 3.5.1.dfsg-2.1ubuntu1.3
Slack設定
Slackのアプリを追加で、Nagiosを設定。手順は、アプリ追加時のセットアップ手順を参照。
Nagios設定
セットアップ手順にて、以下の部分を個別に指定。- command
slack_channel
に`"#$CONTACTEMAIL$"のマクロを指定 - contact
email
に通知するチャンネルを指定
contact
ごとにemail
でチャンネルを指定できるdefine command {
command_name notify-service-by-slack
command_line /usr/local/bin/slack_nagios.pl -field slack_channel="#$CONTACTEMAIL$" -field HOSTALIAS="$HOSTNAME$" -field SERVICEDESC="$SERVICEDESC$" -field SERVICESTATE="$SERVICESTATE$" -field SERVICEOUTPUT="$SERVICEOUTPUT$" -field NOTIFICATIONTYPE="$NOTIFICATIONTYPE$"
}
define command {
command_name notify-host-by-slack
command_line /usr/local/bin/slack_nagios.pl -field slack_channel="#$CONTACTEMAIL$" -field HOSTALIAS="$HOSTNAME$" -field HOSTSTATE="$HOSTSTATE$" -field HOSTOUTPUT="$HOSTOUTPUT$" -field NOTIFICATIONTYPE="$NOTIFICATIONTYPE$"
}
define contact {
contact_name slack-nagios
alias slack-nagios
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r
host_notification_options d,r
service_notification_commands notify-service-by-slack
host_notification_commands notify-host-by-slack
email nagios
}
コメント
コメントを投稿