Después de un tiempo de descanso, me he decidí a mejorar un poco más este blog mio incorporándole unas estadísticas.
Trás mucho pelear con informes de bases de datos, cookies y demás parafernália, me acordé de un analizador de los logs del apache: analog, mucho mas fiable y completo, aunque debo reconocer que demasiado extenso para mis humildes necesidades.
Moneando por emezeta blog me topé con que este hombre se había currado un pedazo de script en perl, MZStats, que hacía más o menos lo mismo que analog, pero para gente como yo. Ea, pues a colocarlo en mi web...
No fué un camino de rosas precisamente. He aquí la pequeña travesía.
Primer problema: el script no pillaba ni una visita.
-Leñe... que raro! - pensé...
Curioseando descubrí el por qué: Manz se habia confundido al poner el mes de diciembre.
if ( `grep -c \"^.* \\[../Nov/....:..:..:.. +....\\] .*GET / .*\$\" $tmpfich` > 0 ) {...
if ( `grep -c \"^.* \\[../Dic/....:..:..:.. +....\\] .*GET / .*\$\" $tmpfich` > 0 ) {...
Como yo probé el script en Diciembre, que en el idioma de Shakespeare es December, pues ahí estaba el error... Ok. Corregido eso hacia lo mismo. Nada, no había forma. Mirando y mirando me doy cuenta del tema:
if ( `grep -c \"^.* \\[../Nov/....:..:..:.. +....\\] .*GET / .*\$\" $tmpfich` > 0 ) {...
if ( `grep -c \"^.* \\[../Dec/....:..:..:.. +....\\] .*GET / .*\$\" $tmpfich` > 0 ) {...
Si señor, en la hora, el símbolo +. Pretendía explicar que es esto, pero como me enredo y he borrado 6 veces la explicación, pues lo explico en plan borrico: "el + jignijica que la hora está expresá del meridiano 0 pa la derecha." Como mi proveedor está en Estados Unidos, a GMT-7, pues lo cambio por un - y a correr.
Wow! Ahora sí! Ahora ya funciona esto! El formato es claro y sencillo. Justo lo que estaba buscando.
Pero como todo en esta vida...
Segundo problema: mi proveedor tan sólo guarda los 3 últimos días de logs y encima, en ficheros separados. Ahí sí, ahí si me llevo mejor y con un poco de maña y algo de Bash, problema solucionado.
A ver si tengo un poco de tiempo, y me curro un "howto" de como instalar MZStats en un servidor de DreamHost...
P.D.: Me queda por solucionar el tema de las horas, que allí son 7 horas menos y a mí me interesa el horario nacional.





