現場で起きている原因不明の障害を調査する。

webアプリを納品してから原因不明の障害というのがあります。どうやって操作したらそんなことができるのか?など。それはclientに依存するものであったり様々です。 この様な問題が発生した場合に最近はjsで操作ログを取ることにしています。


jsはクライアント側なので実際にはもちろんサーバ側でログを取るのですが、、。
この方法がなかなかお薦めなので紹介したいと思います。

仕組みは簡単です。下記のように見えないテキストエリアを作ります。

<div style='display:none'>
  <input type='textarea' id='log'> 
</div>

あとは、getElementById('log'').valueで値を入れるjsを作って操作ログを入れて置くだけです。あとはサーバ側でlogのリクエストパラメータをログ出力するだけです。


iPhoneでhtml書くのはさすがに辛い。