外注会社や未熟なエンジニアにプログラムを組ませると、きちんと処理ログを書けない人が多い。
全く処理ログを書かない人もたまにいる。
ぱっ見て、何をやってるかわからなかったり、肝心なキー情報が抜けていたり。
トラブルシューティングのツボを押さえたログを見るとその人のセンスがうかがえる。
いかにうまくログを吐くかでトラブルシューティングの早さが全然変わってくるのだ。
場合によっては、ログが無かったり不十分な情報しかなかったりして、トラブルを再現できないこともある。
一応ログの内容のフォーマットはチーム内で統一している。
必要最低限、バッチ系の場合はこんな感じでLoggingしてる。
yyyy/mm/dd hh:mm:ss : [level] : [program name] : [information]
(※[level]は、ERR,WRN,INF のいづれか)
統一されてないと、grepしてエラーを拾うとき漏れてしまうからね。
あんまりたくさんログを吐きすぎてそれがパフォーマンスのボトルネックになるようじゃ困りますが(笑)