Проблема при попытке натравить AWStats на логи nginx

Bogun Dmitriy vugluskr at vugluskr.org.ua
Fri Aug 7 16:10:00 MSD 2009


В Птн, 07/08/2009 в 15:19 +0400, Alex, the Marrch Ca'at пишет:

> Доброго всем дня или иного времени суток!
> 
> Я понимаю, что проблема имеет не прямое отношение к теме рассылки, но
> велика вероятность, что кто-то уже сталкивался с задачей использования
> AWStats с логами nginx и может мне что-то посоветовать.
> Формат лога у меня настроен так:
> 
> log_format main	'$host || $remote_addr || [$time_local] || "$request"
> || $status || $bytes_sent || "$http_referer" || "$http_user_agent" ||
> $gzip_ratio';
> 
> Получается примерно следующее:
> 
> 192.168.0.1 || 192.168.0.2 || [06/Aug/2009:19:01:49 +0000] || "POST
> /service.php HTTP/1.1" || 200 || 30604 || "-" || "PHP-SOAP/5.2.9" || -
> infosys.com || 92.100.52.133 || [06/Aug/2009:19:24:51 +0000] || "GET /
> HTTP/1.1" || 404 || 283 || "-" || "Mozilla/5.0 (Windows; U; Windows NT
> 5.1; ru; rv:1.9.0.13) Gecko/2009073022 Firefox/3.0.13" || 0.00
> 
> Формат лога в awstats настроен так:
> 
> LogType=W
> LogFormat="%virtualname %host %time1 %methodurl %code %bytesd
> %refererquot %uaquot %extra1"
> LogSeparator=" || "
> 
> - и, судя по всему, это правильно, поскольку если попытаться немного
> поменять настройки формата - awstats немедленно ругается, что все
> записи в логе corrupted. Однако и в таком виде awstats логи не
> воспринимает, причем крайне странным образом:
> 
> Dropped record (method/protocol '' not qualified when LogType=W):
> 192.168.0.1 || 192.168.0.2 || [06/Aug/2009:19:01:49 +0000] || "POST
> /service.php HTTP/1.1" || 200 || 30604 || "-" || "PHP-SOAP/5.2.9" || -
> Dropped record (method/protocol '' not qualified when LogType=W):
> infosys.com || 92.100.52.133 || [06/Aug/2009:19:24:51 +0000] || "GET /
> HTTP/1.1" || 404 || 283 || "-" || "Mozilla/5.0 (Windows; U; Windows NT
> 5.1; ru; rv:1.9.0.13) Gecko/2009073022 Firefox/3.0.13" || 0.00
> 
> Я не понимаю, почему awstats не может выделить method/protocol из этих
> записей, и почему у него получается пустая строка. Я уже написал на
> форум awstats, но там пока ничего дельного сказать не могут. Нет ли у
> кого идей, что может быть не так? А если нет - то, если у кого-то есть
> реальные логи, которые успешно awstats-ом процессятся - то, будьте
> добры, скиньте мне конфиг лога в nginx и параметры LogFormat /
> LogSeparator из соотв. конфига awstats.

Зачем же так все усложнять? Умолчательный формат access лога nginx
подходит под "LogFormat=W" awstats'а. В аттаче рабочие конфиге с
измененные доменом... LogFile несколько извращенный из-за особенностей
ротации логов.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20090807/adfdd178/attachment.html>
-------------- next part --------------
DNSLookup=1
DirCgi="/cgi-bin/awstats"
DirIcons="/icons/awstats"

LogType=W
LogFormat=1

AllowToUpdateStatsFromBrowser=0
AllowFullYearView=3
AllowAccessFromWebToAuthenticatedUsersOnly=1
AllowAccessFromWebToFollowingAuthenticatedUsers=""
AllowAccessFromWebToFollowingIPAddresses=""

BuildHistoryFormat=xml
KeepBackupOfHistoricFiles=1

LoadPlugin="decodeutfkeys"
LoadPlugin="tooltips"

LogFile="cat /srv/byaka.dom/log/nginx/access.log-%YYYY-0%MM-0%DD-0 /srv/byaka.dom/log/nginx/access.log 2>/dev/null | cat |"
#LogFormat="%host %other %logname %time1 %methodurl %code %bytesd %refererquot %uaquot"

SiteDomain="byaka.dom"
HostAliases="*.byaka.dom"
DirData="/srv/byaka.dom/stats/awstats"

#AllowAccessFromWebToFollowingAuthenticatedUsers=""

-------------- next part --------------
 server {
     listen      212.113.49.20;
     listen      213.186.117.227;
     server_name byaka.dom;
 
     access_log  /srv/byaka.dom/log/nginx/access.log;
     error_log   /srv/byaka.dom/log/nginx/error.log;
 
     root /srv/byaka.dom/www/htdocs-static;
     output_buffers      1 512k;
}


More information about the nginx-ru mailing list