gerry++
どうしても映画に出てくるようなハッカーになりたいのであったが、しかし技術力もなければ勇気もない、そのうえオレは無能。そこでこのツール。アイムハッカーの出番だ。これを使えば誰でもハッカーを気取れるぞ。
2010年のYAPCで映画にでてくるハッカーになりたい という発表をしましたが、なんとなく動かすには敷居が高く感じられるとともに、直接 stdin を読む仕様であったため使えないケースも多く、僕は殆ど使わなくなってしまいました。
先日 uutransfer という screen のログから出力を拾ってほげほげするみたいなツールを書いてから、そういう仕組みをもうちょい応用できないかと考えた結果上記のようなものができあがりました。
簡単にまとめると「tail -f してるアクセスログをリアルタイムで解析してなんかソレっぽく表示するツール」です。
ImHacker というふざけた名前ですが、それは置いといて、node で動くように全部 JavaScript で書いてあります。
使いかた
基本的には GNU screen 上で動かすことを考えて作ってあります。screen 上で、まぁとにかく適当なサーバに ssh で入って (後述しますが mosh だとダメです) アクセスログを tail -f しときます。
ImHacker 自体は次のようにして起動します。
git clone git://github.com/cho45/imhacker.git npm install node app.js
起動して http://localhost:2012/ にアクセスすると、まず最初は設定ダイアログが開くので、アクセスログのフォーマットを指定します。Apache の LogFormat の行をそのままコピペしたら使える感じで作ってあります。設定したら Save を押してダイアログを閉じます (localStorage に設定を保存するので、次からは開きません)
アクセスログを tail -f しているウィンドウの番号に対応する数字のボタンを押します (右上の screen window と書いてあるやつ)。するとログの解析がはじまります。
とりあえず動かしてみたいなら、http://localhost:2012/#demo とするとデモモードで動きます。
コンセプト
- イマ! この! tail -f している! まさに! この! ログを! カイセキ! したいんだ! という感じなので screen からログをひろいます
- ほとんど全ての処理をクライアントサイド (ブラウザ) で行うので、拡張しやすいです。なんかカッコイイグラフを増やしたい。
- もともと来年の YAPC (今年は応募してない) で話すネタを作るつもりだったんですが Perl が一切使われてない
現状の機能
- req/sec の時系列推移
- レスポンスタイムのグラフ化
- リクエストメソッドの統計
- レスポンスステータスの統計
- 遅いレスポンスをかえす path をリスト
- 500 エラーをかえしている path をリスト
- IP アドレスによる時系列トラッキング
- まぁまぁのアクセスがあるサイトでやると楽しいとおもうのでやってみてください
備考
- mosh だと、サーバ側で特殊なことをしていて、クライアント側では部分書き換えをするみたいなことをしているみたいで、screen のログに「見たまま」記録されないので ssh を使う必要があります
- screen 上で動かさなくても、./bin/imhacker-in というコマンドに出力をパイプすると、全クライアントにその内容が送信されるようになります。すなわち tail -f /var/log/access_log | ./bin/imhacker-in としても良いです
- bootstrap をつかってみました
- 最初は Perl で作ろうとおもったけど socket.io を使いたかったのでやめた。あと node のほうが動かすのが簡単そう
✖
✖
✖
✖
日曜日は氷川女體神社に行った。武蔵國一宮、氷川神社には行ったことがあったので、対になるところへ。電車で東浦和まで行ったあと、駅から歩いたのだけれど、炎天下の中1時間ぐらい歩いてようやく着いた。しかし残念ながら本殿は改修中で、仮殿が設置されていた。祭祀場が復元(?)されていたのがおもしろかった。
本来であればバスで行くべきであると思うが、歩くのも悪くなくて、途中目に入った神社にも立ち寄ったり、ちいさい川沿いを歩いたりするのは楽しかった。行きはともかく、帰りも歩いたのはだいぶ辛かった。何度かコンビニに入って涼んだり、飲料水を買って飲んだりが必要だった。
関連エントリー
- 氷川神社・氷川女體神社 氷川女體神社 → 氷川神社と行ってみた。 氷川女體神社 東浦和から徒歩でいった。1時間ぐらい歩く。 だいたい見沼代用水西縁緑道を歩いていけば...
- ✖ 出張で東京だけれど、どうせ小田原で降りるので、ちょっと前に行ってみたいと思った川勾神社に行ってきた。まだ正月の装備なのだけれど、人が少ないの...
- ✖ 東郷神社に行ったので東京都にある別表神社は全て行ったことになる。東郷神社は思ったよりも小さかった。これで二度と原宿に行くことはないだろう。
- ✖ 金曜日、帰宅後に御苑を歩いていたら気持ちよかったので、そのまま夜の嵐山へ。野々宮神社あたりまでいったがそれ以降は明りが全くないので戻り、桂川...
- 氷川神社 以前きたときは大宮から、氷川神社を参拝したあと参道を逆走したので、今回は ちゃんと(?)一の鳥居から2kmほど歩いてみた。 この参道は途中途...
✖
✖
関連エントリー
- 東京赤坂 日枝神社 ログイン - Google アカウント あんまり下調べせずに、別表神社だからと行ったら、山王鳥居が都会の中でいきなりそびえ立っていてびっくり...
- Googleプロフィールにウェブサイトを関連付ける 500 Can't connect to hail2u.net:443 を見て、そんなことできたのかと思いやってみたら見事にハマった。 やり...
- Android と USB 接続したとき、どうあがいても一部のファイルを転送できない 症状としては ファイル転送 / Android Auto モードで USB 接続し Windows Explorer からコピーしたいデバイ...
- macOS の EOS Utility 「カメラとUSB接続できませんでした」 どうあがいても接続できなくて困った。 どうやらなんか Google Chrome が USB デバイスをかたっぱしからオープンする挙動をして...
- BBR 輻輳制御アルゴリズムの考えかた これまで採用されていた輻輳制御アルゴリズムの多くはパケットロスベースであった CUBIC / (New) Reno など しかし実際はパケッ...







