GoAccessを使用したWebサーバーのログ分析

画像
少し前に、Webサーバーのログを分析してレポートを作成できるGoAccessユーティリティに出会いました。 このユーティリティはCで記述されており、ほぼすべてのLinuxディストリビューションリポジトリで利用できます。 プロジェクト住所

この記事は革新的なものではなく、短いHOWTOであり、そのほとんどはドキュメントにあります。

そして順番に:

1.インストール

yum install goaccess 


2.セットアップ

/etc/goaccess.confファイルで、nginxログを分析するための行のコメントを解除します。

 time-format %H:%M:%S date-format %d/%b/%Y log-format %h %^[%d:%t %^] "%r" %s %b "%R" "%u" 


3.ログ分析

分析の結果は、コンソール(インタラクティブ)モードとレポート形式の2つのモードで取得できます。 このプログラムは、html、json、csvなどのいくつかのタイプのレポートをサポートしています

現在のログを分析するためにプログラムを起動する最も単純なケース:

 goaccess -a -f <log_file> 


この場合、現在のログの分析を次の形式で取得します。
画像
TABを使用してパラメーターをナビゲートできます。

Webレポートは次のようになります。
画像

次に、ログ全体ではなく、特定の部分のみを分析する必要がある場合を考えてみましょう。

1.過去2時間のログ分析:

 sed -n '/'$(date '+%H:%M:%S' -d '2 hours ago')'/, $ p' <log_file> | goaccess -a 


2.過去2日間の分析:

 sed -n '/'$(date '+%d/%b/%Y' -d '2 day ago')'/, $ p' <log_file> | goaccess -a 


3.特定の日付の分析:

 sed -n '/18\/Jan\/2016/,/19\/Jan\/2016/ p' <log_file> | goaccess -a 


4. htmlレポートの取得:

 goaccess -a -f <log_file> > report.html 


投稿者: Magvai69システム管理者

Source: https://habr.com/ru/post/J275667/


All Articles