squid でアクセスログを日付形式にする
squid のアクセスログはデフォルトだと UNIX タイムで表示され、人間には「いつのログなのか?」を直感的に理解することが出来ません。 そこで、今回は squid のアクセスログを日付形式へ変更する方法をメモしておきます。
デフォルトで定義されている 5 種類のログフォーマット¶
squid のログフォーマットは Squid configuration directive logformat によるとデフォルトで以下の 5 種類が定義済み、と書かれています。
1 2 3 4 5 |
|
更に注釈として以下が書かれています。
NOTE: When the log_mime_hdrs directive is set to ON. The squid, common and combined formats have a safely encoded copy of the mime headers appended to each line within a pair of brackets.
NOTE: The common and combined formats are not quite true to the Apache definition. The logs from Squid contain an extra status and hierarchy code appended.
デフォルトのログ出力¶
明示的にログフォーマットを指定していない場合、squid のアクセスログ (/var/log/squid/access.log
) は以下のように UNIX タイムで表示されます。
1 |
|
ログフォーマットを日付形式にカスタマイズする¶
これを人間が理解しやすいように「日付形式」へ変更するには /etc/squid/squid.conf
へ以下のように定義します。
1 2 |
|
squid を再起動して設定変更を反映します。
1 |
|
これでアクセスログには以下のように表示されます。
1 |
|
squid の設定ファイルをチェックする¶
squid には squid -k [SIGNAL]
というコマンドがあります。 man
には以下のように書かれています。
1 2 |
|
check
というオプションを使い、squid -k check
と指定することで /etc/squid/squid.conf
の内容を確認することが出来ます。 設定に問題が無い場合は特に何も表示されません。
1 2 |
|
設定に問題がある場合、以下のように該当箇所が指摘されます。
1 2 |
|