Tengo una aplicación web que se ejecuta con nginx y me gustaría analizar los registros para obtener información sobre cuántas visitas recibe cada archivo y qué errores 404 y otros errores estamos generando (algo que Google Analytics no puede proporcionar).
Normalmente, simplemente soltaría awstats en un servidor, pero con nginx, debido a la falta de cgi-bin, no es trivial. ¿Hay otra solución trivial para obtener esta información? No me importa pagarle a un tercero para que haga este análisis por mí.
Si está dispuesto a ensuciarse las manos, le aconsejaría que use Logstash + ElasticSearch + Kibana .
Puede hacer mucho más de lo que pides, pero puede hacer lo que pides bien, y tendrás un verdadero infierno para explorar realmente tus registros para comprender qué está sucediendo, o ha estado sucediendo.
Este es el sitio web de demostración de Kibana
Esta es una publicación de blog que muestra cómo se configuró para analizar Apache Tomcat con esta plataforma, simplemente puede adaptarla a sus necesidades: http://spredzy.wordpress.com/2013/03/02/monitor-your-cluster -of-tomcat-aplicaciones-con-logstash-and-kibana /
fuente
Tuve que usar awstats con Nginx esta semana y no tienes que usar cgi-bin necesariamente. Awstats viene con el script awstats_buildstaticpages.pl que generará archivos html estáticos que luego podrá servir con Nginx. Con un trabajo cron actualizo los archivos html regularmente.
/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
(Dependiendo de su sistema operativo, las rutas pueden diferir un poco, pero podrá encontrar los scripts)Para evitar la pérdida de datos durante la rotación del registro, puede agregar esta línea a su archivo 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 |"
El script fusionará los últimos 2 registros cada vez que obtenga el registro para actualizar sus datos. O bien, puede agregar un gancho previo a la rotación en Nginx como lo hacen aquí: http://www.bytetouch.com/blog/system-administration/how-to-awstats-installation-and-configuration-on-debian/
fuente
Depende del nivel de funcionalidad que requiera, pero AFAIK es posible hacer que AWStats genere archivos estáticos, por lo que no necesita cgi.
Al revés: debería ser posible hacer que AWStats se ejecute como un script FastCGI. Diría que ni siquiera será demasiado pirateo.
fuente