awkでapacheのアクセスログから欲しい情報を抜き出す

awkでapacheのアクセスログから欲しい情報を抜き出す

awkawkでapacheのアクセスログから欲しい情報を抜き出す

Apache のアクセスログを見る場面に遭遇すると、決まって「あのコマンド何だったっけ?」って状況に陥るので、忘れないうちにメモっておきます。もっとたくさんあったんだけど、また思い出したら追記していきます。

Apache のリクエスト単位の処理時間が 2 秒以上のアクセスのみ取得する。アクセスログの項目は全部出力する。ちなみに、処理時間を秒でログに出力するには、Apache のログフォーマットで %T を指定する必要があります。

※処理時間が11番目とした場合

awk -F' ' '{if($11>2)print $0}' /var/log/hogehoge.log

Apache のレスポンスのステータスコードが 500 のアクセスのみ取得する。アクセスログの項目は全部出力する。間違って == の条件式を = にしちゃうと、該当カラムにその値が表示されるだけなので注意。

※レスポンスのステータスコードが8番目とした場合

awk -F' ' '{if($8==500)print $0}' /var/log/hogehoge.log

最終更新日:

関連記事

人気記事

新着情報