雑なURL監視ツールです
https://github.com/sue445/zatsu_monitor
作った経緯
社内外で公開している個人アプリをURL監視したかっただけです。(Mackerelだと社内アプリ 1 が監視できないので使えなかった)
インストール方法
https://github.com/sue445/zatsu_monitor/releases からバイナリをダウンロードして雑にどっかに置いてください。
使い方
雑にyamlを書いて
config.yml
# zatsu_monitor.yml
google:
type: slack
check_url: "https://www.google.com/"
api_token: "AAAAAAAA"
channel: "#general"
user_name: "zatsu_monitor"
github:
type: chatwork
check_url: "https://github.com/"
api_token: "AAAAAAAA"
room_id: "111111"
雑に実行
/path/to/zatsu_monitor -config /path/to/zatsu_monitor.yml -data /path/to/data_dir
-
-config
: 設定ファイルの場所 -
-data
: 直前のhttpステータスを保存するキャッシュディレクトリ
ステータスが変わった時だけ投稿
仕様
- golang製なのでバイナリをダウンロードして雑に置けばどこでも動く
- https://github.com/sue445/zatsu_monitor/releases
- 余計なミドル不要
- crontabやJenkinsで定期実行する想定
- urlをHTTP GETしてステータスコードが変わった時だけチャットに通知(例:200 -> 500)
- SlackとChatWorkに対応
- 他のが欲しい場合はPRカモン
特徴
yamlなので値を継承できるのが嬉しい
トークンなどを1ヶ所に定義して、監視したいサイトで継承することができます
config.yml
slack: &common
type: slack
channel: "#general"
api_token: "xoxp-0000000000-0000000000-0000000000-000000"
github:
# inherit common values
<<: *common
# override common values
check_url: "https://github.com/"
chennel: "#github"
google:
<<: *common
check_url: "https://www.google.com/"
chennel: "#google"
ステータスコードの100の位の変化だけチェックしたい
v0.2.0の新機能です。
会社で使ってるとあるサービスが、エラーの時にステータスコード502と503と504をランダムで返すという現象が頻繁に発生し、その度にチャットに通知がいくのがうざいのでステータスコードの100の位のみチェックするための機能を作りました。
使いたい時は config.yml
に check_only_top_of_status_code: true
を設定してください
config.yml
some:
check_only_top_of_status_code: true
思い出
ISUCONの予選の時に自分のチームのアプリを監視するのに便利でした
-
社内イントラからしかアクセスできないアプリ ↩