以前こちらの記事「RubyでBacklogのAPIを利用して課題を追加してみる」にて、
Backlogに課題を追加するスクリプトを作成しました。
今回は上記スクリプトを利用して、Nagiosのアラート通知をBacklogの課題として登録できるようにしてみました。
Nagiosの設定ファイルは下記のようにしています。
# cat /etc/nagios/objects/commands.cfg
...
# 'notify-host-by-backlog' command definition
define command {
command_name notify-host-by-backlog
command_line /tmp/create-issue "space" "0000000000" "user" "password" "$HOSTSTATE$: $HOSTNAME$" "$LONGDATETIME$, $HOSTSTATE$, $HOSTNAME$, $HOSTOUTPUT$" >>/tmp/create-issue.log 2>&1
}
# 'notify-host-by-backlog' command definition
define command {
command_name notify-service-by-backlog
command_line /tmp/create-issue "space" "0000000000" "user" "password" "$SERVICESTATE$: $HOSTNAME$/$SERVICEDESC$" "$LONGDATETIME$, $SERVICESTATE$, $HOSTNAME$/$SERVICEDESC$, $SERVICEOUTPUT$" >>/tmp/create-issue.log 2>&1
}
...
# cat /etc/nagios/objects/contacts.cfg
...
define contact {
contact_name nagiosadmin
use generic-contact
alias Nagios Admin
service_notification_commands notify-service-by-backlog
host_notification_commands notify-host-by-backlog
email suzuki@suz-lab.com
}
...
実際に通知してみたところ、下記のようにBacklogの課題として登録されました。
次の機会では、Backlogの課題が一定数以上残っていたら、Nagiosでアラート通知するようにしてみようと思います。