Аналізатор журналу для nginx [закрито]


13

У мене є веб-додаток, що працює з nginx, і я хотів би проаналізувати журнали, щоб отримати інформацію про кількість звернень кожного файлу, а також 404 помилки та інші помилки, які ми генеруємо (те, що Google Analytics не може надати).

Зазвичай я просто викидаю астсти на сервер, але з nginx, через відсутність cgi-bin, це не банально. Чи є інше банальне рішення для отримання цієї інформації? Я не проти платити сторонній, щоб зробити цей аналіз за мене.

Відповіді:


20

Ви можете використовувати goaccess для аналізу своїх веб-журналів та отримання підсумків звернень, унікальних IP-адрес, найкращих статичних файлів, топ-404, різних кодів статусу та багато іншого. Він відображає перший підсумок інформації верхнього рівня, а потім дозволяє інтерактивно розгортати кожну головну главу. Ви годуєте ним логфайл або трубу, і це дуже швидко.

Я виявив це тут на SF і з тих пір змінив мій погляд на журнали веб-серверів: я схильний робити опортуністичний, проблемний аналіз журналів і був незадоволений аналогами, айстастами та вебалайзером.


Нічого, дякую, що згадуєте про GoAccess, це дивовижно!
Richie086

6

Якщо ви готові забруднити руку, я б радив вам використовувати Logstash + ElasticSearch + Kibana .

Це може зробити набагато більше, ніж те, що ви просите, але це може зробити те, про що ви просите, і у вас буде справжня поверхня для фактичного перегляду ваших журналів, щоб зрозуміти, що відбувається чи відбувається.

Це демонстраційний веб-сайт Kibana

Це повідомлення в блозі, де показано, як було налаштовано для аналізу Apache Tomcat за допомогою цієї платформи, ви можете просто адаптувати її до своїх потреб: http://spredzy.wordpress.com/2013/03/02/monitor-your-cluster -of-tomcat-додатки-з-logstash-і-kibana /


1
+1 за правильну відповідь.
Том О'Коннор

1

Мені довелося використовувати awstats з Nginx на цьому тижні, і вам не доведеться використовувати cgi-bin обов’язково. Awstats поставляється зі скриптом awstats_buildstaticpages.pl, який буде генерувати статичні HTML-файли, які ви зможете подавати з Nginx. Завдяки роботі cron я регулярно оновлюю HTML-файли.

/usr/share/doc/awstats/examples/awstats_updateall.pl now -awstatsprog=/usr/lib/cgi-bin/awstats.pl

/usr/share/awstats/tools/awstats_buildstaticpages.pl -update -config=domain.com -dir=/path/to/save/html/files awstatsprog=/usr/lib/cgi-bin/awstats.pl (Залежно від вашої ОС шляхи можуть дещо відрізнятися, але ви зможете знайти сценарії)

Щоб запобігти втраті даних під час обертання журналу, ви можете додати цей рядок у файл awstats.domain.com.conf:

LogFile="/usr/share/awstats/tools/logresolvemerge.pl /path/to/log/access.domain.tld.log /path/to/log/access.domain.tld.log.1 |"

Сценарій об'єднує останні два журнали кожного разу, коли ви отримуєте журнал для оновлення даних. Або ви можете додати попередньо логротатний гачок на Nginx, як це роблять тут: http://www.bytetouch.com/blog/system-administration/how-to-awstats-installation-and-configuration-on-debian/


0

Залежить від потрібного вам рівня функціональності, але AFAIK можна змусити AWStats генерувати статичні файли - при цьому немає необхідності в cgi.

Навпаки - AWStats працює як сценарій FastCGI. Я б сказав, що це не буде занадто сильно хакерським.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.