仕様や画面は現行バージョンと異なる可能性があります。
Typetalkの最新版についてはこちらからご確認ください。
運用中のシステムで異常が発生した時はいち早く知りたいもの。システムのメモリ使用率などの監視はソフトウェアを管理する開発者にとって、重要なタスクの1つです。そんなシステム監視をもっと楽にするために、本記事では「システムアラート」を通知する Typetalk ボットの作成方法をご紹介します。
Typetalk API を使うことで簡単に作成できるボットを活用して、システムアラートをTypetalkで受け取りましょう。
システムアラート を通知するボットの作成手順
1. アラートを受け取るトピックの設定画面でボットを作成
このボットはメッセージを投稿する必要があるため、 Typetalk の API スコープの「 topic.post 」にチェックを入れてください。
2. ボットにアラートメッセージを投稿させるためのスクリプトを作成
シェルやPerlなどを使用し、システムの情報を読み取ってPOSTリクエストを送るスクリプトを作成します。
ソースコードの例:
#!/usr/bin/env bash while read LINE do TOTAL=`echo $LINE | perl -lne 'print $1 if /^Mem:\s*?([0-9]+)\s*?([0-9]+)/'` USED=`echo $LINE | perl -lne 'print $2 if /^Mem:\s*?([0-9]+)\s*?([0-9]+)/'` DIV=`echo "scale=3; $USED / $TOTAL * 100" | bc` INT=${DIV%.*} if [ $INT -gt 80 ]; then curl -d "message=メモリ使用率は $DIV パーセントです!" 'https://typetalk.com/api/v1/topics/$TOPIC_ID?typetalkToken=$TYPETALK_TOKEN' fi done < <(free -tm | grep "Mem:")
3. Cron などの定期実行用ツールを使用してスクリプトを定期実行
手順2で作成したスクリプトを定期的に実行することで、システムの情報をTypetalkのトピックに投稿します。スクリプトを定期実行する方法は色々ありますが、crontabに追記してスケジューリングさせるのが最も手軽な方法の一つでしょう。
Typetalk ボット まとめ
システムアラートボットの作成手順は以上です。この記事の例に沿ってTypetalkボットを設定することで、メモリ高負荷の通知を Typetalk のトピックで受け取れます。
Typetalk API を活用することで、自分の目的にあわせた形でTypetalkの機能をカスタマイズできます。システムアラート以外の他の用途でもぜひ試してみてください。