ログ調査に使えるコマンド色々

サーバを運用していると、どうしてもログを調査しなければならない時があります。
そんな時に使える便利なアレコレを紹介します。

 

1行が長いが、読みにくくなるので改行させずに確認したい

less -S filename.log

ファイルの頭から20行までを確認したい

head -20 filename.log

ファイルの最後から20行までを確認したい

tail -20 filename.log

gz圧縮されたログ出力

zcat filename.log.gz

1列目、3列目、5列目〜7列目まで表示

cut -f1,3,5-7 filename.log

フィルタ

単純な検索

fgrep hello filename.log

タブ区切りで1-3列目まで表示

cat filename.log | awk ‘BEGIN{FS=”\t”} {print $1,$2,$3}

タブ区切りで2列目が400以上のものだけ1-3列目まで表示

cat filename.log | awk ‘BEGIN{FS=”\t”} $2 >= 400 {print $1,$2,$3}

ソート関連

単純なソート

sort filename.log

降順ソート

sort -r filename.log

数値としてのソート

sort -n filename.log

2列目を基準にソート

sort -k2,2 filename.log

区切り文字を,にして2列目基準ソート

sort -t”,” -k2,2 filename.log

ファイルへ出力

単純に結果をファイルへ書き出す

sort -nr before.log > after.log

様々な処置を行い画面へ出力させながらログにも残したい

sort -nr before.log | head -20 | tail -10 | tee after.log

 
様々なコマンドがあり、組み合わせの発想で目的のデータを抜き出すことが可能になります。
ぜひ苦手意識を持たずにチャレンジしてみてください。

コメント