Squidが出力するaccess.log(/var/log/squid/access.log)の設定は以下の通り。
access_log /var/log/squid/access.log squid
access_log は「/var/log/squid/access.log」に【squid】のフォーマットで出力しろという設定です。
さて、この【squid】というフォーマットはどこで指定されているのでしょうか。
/etc/squid/配下にある「squid.conf.default」を見ると分ります。
# grep -B2 ^#logformat /etc/squid/squid.conf.default
# The default formats available (which do not need re-defining) are:
#
#logformat squid %ts.%03tu %6tr %>a %Ss/%03Hs %<st %rm %ru %un %Sh/%<A %mt
#logformat squidmime %ts.%03tu %6tr %>a %Ss/%03Hs %<st %rm %ru %un %Sh/%<A %mt [%>h] [%<h]
#logformat common %>a %ui %un [%tl] "%rm %ru HTTP/%rv" %Hs %<st %Ss:%Sh
#logformat combined %>a %ui %un [%tl] "%rm %ru HTTP/%rv" %Hs %<st "%{Referer}>h" "%{User-Agent}>h" %Ss:%Sh
#
the default formats available ( which do not need re-defining) といっているが、
私の場合、/etc/squid/squid.confにて
access_log /var/log/squid/access.log combined
とし、「squid -k check」したら以下のエラーになりました。
つまりディフォルトでは利用出来ない(=which DO NEED re-definingでした)ようです。
"Log format 'combined' is not defined"
おっかしーなー。
.defaultのファイルでは「do not need re-defining」と 書いてあるんですが、ディフォルトのままで
指定できたlogformatは「squid」 と「common」のみでした。もし、「combined」を有効にしたい場合は
.defaultファイルから一行をコピーし、/etc/squid/squid.confに書いてやってください。
#access_log /var/log/squid/access.log squid logformat combined %>a %ui %un [%tl] "%rm %ru HTTP/%rv" %Hs %<st "%{Referer}>h" "%{User-Agent}>h" %Ss:%Sh access_log /var/log/squid/access.log combined
squid -k check で問題ないことを確認したら、
squid -k reconfigure で設定を読み込み直し、その後のaccess.logを観察しましょう。
以上
コメント