WEB サーバのログを TSV に変換しようと思った理由

WEB サーバのログ、common log format という形式で記録されている。

タブ区切りなら、cut コマンドでフィールド抽出したりできるのにな、 とか、日付は、isoformat のほうが、見やすいし、ソートもできるのに、 と思っていた。

そこで、common log format をタブ区切り(tsv) に変換するスクリプトを、今ごろになって作ってみた。 今ごろ作ったので、同じようなものが、どこかにあるかもしれない。

cl2tsv

ログは、gzip されていることが多いので、.gz の拡張子が付いていると gzip ファイルとして開く。

docker コンテナで common log format を tsv に変換する

いちいちダウンロードするのもめんどいな、と思ったので、docker コンテナにしてみた。

次のようにして使う。

zcat  -f $(ls -tr /var/log/nginx/access.log*) | docker run -i --rm moriya9n/cl2tsv | grep -i googlebot | cut -f 4,5,6 | grep 404

やろうとしていることがあやしいが。。。

See Also

このエントリーをはてなブックマークに追加

※ share / ブックマーク / リンクしていただけると嬉しいです。