Zabbixのトリガーをtweetしたついでに吊る!

Zabbix のトリガーと連動して検知内容を tweet する方法は、前二つのエントリー通りで、こちらは期待通りに動いてくれている。

いま通知を tweet するようにしているサイト、実際に見に行って某クラスターお馴染みの即吊♥キャプチャーを使って、アーカイブを作っているのだけど、サイトの更新確認と同時に archive.is でのアーカイブ取得と Twitter への取得通知を自動化しちゃおう、というのが今回のミッション。

即吊♥キャプチャー|WEBキャプチャーをTwitterに投稿しちゃうアプリケーション

即吊♥キャプチャーを使う準備と Cookies の取得

Twitterのアプリケーション認証で即吊♥キャプチャーを許可

まず、即吊♥キャプチャーを使うための準備として、即吊♥キャプチャーを Twitter アプリとして利用するためのアプリケーション認証をしましょう。
まず、これが第一段階。


で、作者によると、Web ブラウザの Cookie を使って Twitter 投稿時のユーザ認証をするというので、この Cookie の中身を把握しなくちゃいけないわけですが…。

これに関しては、 Chrome の拡張機能の cookie.txt expert を使うと比較的簡単に取得可能で、即吊♥キャプチャーのアプリケーション認証が済んでいる状態で、cookie.txt expert のボタンをクリックすると、下の画像のように cookie が表示される。

即吊♥キャプチャーのcookieを表示

実際に必要なのは、赤枠で示した "slfeed_SESS" の行の部分なので、これをテキストファイルとして保存します。

ここまでで準備が完了。

実際に、コマンドラインから「吊る」

さて、実際にコマンドラインから正しく「吊れる」か確認してみます。

まず、 cookie.txt export を使って取得した cookie を保存したテキストファイルを、以下のように吊る処理をさせたいサーバのどこかに配置します。

soukaku@vps2:~$ pwd
/home/soukaku
soukaku@vps2:~$ ls -l sktr_cookies.txt
-rw-r--r-- 1 soukaku soukaku 178 12月 2 23:34 sktr_cookies.txt

即吊♥キャプチャーにリクエストを投げるのに、今回は curl を使います。
curl での実行内容は、以下のとおり。

soukaku@vps2:~$ curl -v -L -b sktr_cookies.txt "http://drinker.slfeed.net/archive/?url=http%3A%2F%2Fwww.downtown.jp%2F~soukaku%2F"

実行時のオプションは、

  • -v :curl 実行時にリクエスト/レスポンスメッセージを出力する。(主にテスト目的)
  • -L :リクエスト送信時、サーバからリダイレクトのレスポンスが戻ってきた時に、それに追随。
  • -b :cookie を指定。(cookie の文字列を直接か、cookie の各のされたファイルを指定)

で、リクエストの自身は、投げ先(http://drinker.slfeed.net/archive/?)と、吊りたいサイトのURLをエスケープしたものを "url=" に続けて指定(url=http%3A%2F%2Fwww.downtown.jp%2F~soukaku%2F)して、こんな感じで tweet までされていれば、テスト成功。(curl 実行時の応答内容

実際の動作は

テストでうまくいくことが確認できたら、Zabbix 側の設定。
設定と言っても、先に設定したとおり、アクションの詳細の中で吊りたいサイトを指定した curl コマンドを書いておくだけ。(テストのためにつけていた -v オプションは不要。)

/usr/lib/zabbix/alertscripts/zbx2tw.py "@Soukaku" "{TRIGGER.NAME} http://www.city.sanjo.niigata.jp/eigyo/page00176.html"
/usr/bin/curl -L -b /home/soukaku/sktr_cookies.txt "http://drinker.slfeed.net/archive/?url=http%3A%2F%2Fwww.city.sanjo.niigata.jp%2Feigyo%2Fpage00176.html&text=%E3%82%B5%E3%82%A4%E3%83%88%E6%9B%B4%E6%96%B0%E2%86%92" 2>&1 >/dev/null

その設定に従って、吊られると、こんな感じ。

即吊♥キャプチャーにリクエストするタイミングで加えるパラメータを調整すると、ハッシュタグをつけたり、指定したメッセージ付きで tweet することもできるので、その辺りはお好みに応じて、どうぞ。

トラックバック(0)

コメントする