Apacheのログを一括でホスト名表示する(logresolve)


Linuxサーバー管理者の技術を2日で学べる「初心者向けリナックスセミナー」
独学で1年以上掛かるプロのLinux技術を、たった2日間で習得できます。
リナックスマスター2日間集中セミナー【CentOS7版】
 (今すぐ↑をクリックしてください。)

Apacheのアクセスログは、デフォルトの設定のままだと
接続クライアントのIPアドレスを記録します。

Apacheの設定ファイル(httpd.confまたは、httpd-default.conf)の
HostnameLookupsを「On」にすることで接続クライアントを
ホスト名で記録するように変更ができますが、
パフォーマンス低下を招いてしまいます。

運用中のパフォーマンス低下を防ぐために、
logresolveコマンドを使用してIPアドレスで記録したログファイルを、
一括でホスト名に変換します。

下記例では、IPアドレスで記録されたaccess_log_20170705ファイルを
ホスト名変換してresolve_logファイルに出力します。
# logresolve < access_log_20170705 > resolve_log

また、「-s」を指定して実行することで、logresolveコマンドの実行結果の
統計をファイル出力することも可能です。
例えば、名前解決できたIPアドレスやホスト名、
または名前解決できなかったIPアドレスなどが出力されます。

下記例では、toukeiファイルに統計データを出力しています。
# logresolve -s toukei < access_log_20170705 > resolve_log

統計データは下記のように出力されます。
# cat toukei
logresolve Statistics:
Entries: 131
With name : 0
Resolves : 75
- No reverse : 16
Cache hits : 56
Cache size : 75

アクセスログが大きいと、処理に時間が掛かります。
実行する際は、負荷が少ない時間帯を選ぶなどの配慮が必要になります。



■CentOS7.4サーバー構築マニュアルを無料プレゼント
下記3冊のマニュアルを無料プレゼントしています。
・CentOS7.4サーバー構築マニュアル(105ページ)
・VMware Playerで作る仮想Linux環境構築マニュアル(40ページ)
・データベース(PostgreSQL・MySQL)構築・CentOSバージョンアップマニュアル(33ページ)

※常に最新のCentOSが使用できます。
詳しくは↓のページで説明しています。今すぐクリックしてください。
 無料マニュアルをダウンロードする  無料マニュアルをダウンロードする