Saludos señor. ¿Podría ayudarme a analizar el archivo de registro json?
Ejemplo de cadena de registro:
{"ip": "176.122.232.00", "host": "cdn.tv.com", "path": "/dtv/c_1199622700411804.ts", "status": "200", "user_agent": "YX_XY/1.0.1.0.3364", "length": 1392120, "date": "2016-10-09T20:00:00+03:00"}
Estoy usando este formato:
goaccess -f access.log --log-format='%^: "%h", %^:%^, %^: "%R", %^: %s, %^: "%u",%^: %b, %^: "%dT%t+%^"' --date-format='%Y-%m-%d' > /report.html
Y conseguir
Parsing... [1 734 743] [867 371/s]s]
GoAccess - version 0.8.5 - Dec 5 2014 06:36:01
Fatal error has occurred
Error occured at: goaccess.c - main - 832
Nothing valid to process
¿Qué pasa con mi formato de registro?
Gracias.
Esto debería funcionar:
goaccess -f access.log --log-format='%^: "%h",%^: "%v",%^: "%U",%^: "%s",%^: "%u",%^: %b,%^: "%dT%t+%^"%^' --date-format='%Y-%m-%d' --time-format='%T' --http-protocol=no --http-method=no
Gracias por responder,
Tengo estos errores
goaccess: unrecognized option '--time-format=%T'
(probablemente tenga una nueva versión)
Luego eliminé la opción formato de hora y obtuve 2 errores más.
goaccess: option '--http-protocol' doesn't allow an argument
goaccess: option '--http-method' doesn't allow an argument
Cuando eliminé todas estas opciones, finalmente obtuve mi informe.
Por cierto, ¿podría explicar este formato de registro para las generaciones futuras? :)
Para aquellas opciones no reconocidas, actualice a la última versión.
Gran pregunta, una de las partes más importantes en el formato de registro es el carácter que sigue a %^
o cualquier otro especificador. El analizador buscará ese carácter, por ejemplo, si tengo %^:
, significa que quiero que el analizador omita todo hasta que se encuentre un :
. Eso ayuda mucho, así que no tengo que usar un montón de %^
para ignorar campos. La próxima versión manejará esto mejor al mostrar qué tokens no coincidían con el formato de registro, lo que debería facilitar las cosas.
Para obtener una lista de los especificadores de registro disponibles, eche un vistazo a esto .
Comentario más útil
Para aquellas opciones no reconocidas, actualice a la última versión.
Gran pregunta, una de las partes más importantes en el formato de registro es el carácter que sigue a
%^
o cualquier otro especificador. El analizador buscará ese carácter, por ejemplo, si tengo%^:
, significa que quiero que el analizador omita todo hasta que se encuentre un:
. Eso ayuda mucho, así que no tengo que usar un montón de%^
para ignorar campos. La próxima versión manejará esto mejor al mostrar qué tokens no coincidían con el formato de registro, lo que debería facilitar las cosas.Para obtener una lista de los especificadores de registro disponibles, eche un vistazo a esto .