awstats не может проанализировать мой журнал

Я хочу использовать AwStats для парсинга nginx журналов доступа.

Указанный nginx формат журнала

'$remote_addr - $remote_user [$time_local]  $status '
'"$request" $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';

и журналы, кажется, создаются правильно.

Формат журнала AwStats

LogFormat = "%host - %logname %time1 %code %methodurl %bytesd %refererquot %uaquot %otherquot"

Когда я пытаюсь выполнить его из командной строки, я получаю следующий вывод ошибок:

Running '"/usr/lib/cgi-bin/awstats.pl" -update -config=default -configdir="/etc/awstats"' to update config default
Create/Update database for config "/etc/awstats/awstats.conf" by AWStats version 7.2 (build 1.992)
From data in log file "/.../****-access.log"...
Phase 1 : First bypass old records, searching new record...
Searching new records from beginning of log file...
AWStats did not find any valid log lines that match your LogFormat parameter, in the 50th first non commented lines read of your log.
Your log file /.../****-access.log must have a bad format or LogFormat parameter setup does not match this format.
Your AWStats LogFormat parameter is:
%host - %logname %time1 %code %methodurl %bytesd %refererquot %uaquot %otherquot
This means each line in your web server log file need to have the following personalized log format:
%host - %logname %time1 %code %methodurl %bytesd %refererquot %uaquot %otherquot
And this is an example of records AWStats found in your log file (the record number 50 in your log):
1.2.3.4 - - [20/Sep/2015:14:18:24 +0200]  200 "POST /somescript.php HTTP/1.1" 1277 "http://some.refer.er" "Mozilla/5.0 (Windows NT 6.3; WOW64; rv:40.0) Gecko/20100101 Firefox/40.0" "-"
Setup ('/etc/awstats/awstats.conf' file, web server or permissions) may be wrong.
Check config file, permissions and AWStats documentation (in 'docs' directory).

Я уже попробовал несколько различных переменных (учебное руководство, за которым я первоначально следовал, имел %code и %methodurl переключенный и используемый %host_r вместо %logname) но до сих пор я не заставил это работать.

Я даже пытался заменить %logname с - потому что я полагал, что недостающее имя удаленного пользователя могло бы перепутать AwStats, но напрасно.

Мне формат журнала и фактическая строка журнала из сообщения об ошибке похожи, они должны соответствовать. Что я пропускал?

3
задан 20 September 2015 в 21:25
1 ответ

Вот конфигурация журнала, которую мне пришлось использовать в awstats, чтобы она заработала.

LogFormat = "%host %other %other %time1 %methodurl %code %bytesd %refererquot %uaquot"

Она основана на формате бокс-журнала nginx

.
0
ответ дан 3 December 2019 в 08:03

Теги

Похожие вопросы