Logstash - Méthode pour debugger les grokparsefailure


(Mika) #1

Bonjour à tous ! Je débute depuis plusieurs heures sur le parsing des log logstash.

C'est peut-être une question très anodine pour vous mais je cherche les "best practice" pour parser mes logs et surtout rechercher les erreurs.

J'ai tout fraichement réalisé un pattern grok et j'arrive à découper comme je le souhaite mais j'ai toujours un tag "grokparsefailure" . Dans ce cas je conclu que mon filter n'est pas "propre" ?
Quel est le moyen le plus pratique pour repérer les defaux de grokparsefailure ?

J'ai bien lu les doc et je me suis bien documenté. Étant donner que je n'ai peut être pas la logique d'un développeur je suis passé au travers de quelque chose.

C'est une question plutôt général donc dans un premier temps je ne demande pas de vérifier mon fichier de conf logstash.


(Mika) #2

Je viens de me rendre compte que le message n'étais pas affiché ! :expressionless:


(David Pilato) #3

Oui. Ca veut dire que les expressions régulières ne peuvent pas s'appliquer à tes lignes.

Quel est le moyen le plus pratique pour repérer les defaux de grokparsefailure ?

Dans Kibana il y a un Grok Debugger. Perso, j'aime beaucoup utiliser ça pour construire mon pattern Grok: http://grokconstructor.appspot.com/


(Mika) #4

Merci de ton retour,

C'est étrange parce que le découpage se fait correctement et comme je le souhaite. Avons nous la possibilité d’analyser à quel endroit le "parsing" ne s’effectue pas correctement ? Ou la meilleur des façons est de recommencer le fichier de conf petit à petit afin d'observer quand le grokparsefailure s’exécute ?

Oui j'ai justement utilisé Grokconstructor qui m'a été très utile pour monter dans un premier temps les regex.


(David Pilato) #5

C'est étrange parce que le découpage se fait correctement et comme je le souhaite.

Sans doute. SAUF pour la ligne en question qui est rejetée.

Avons nous la possibilité d’analyser à quel endroit le "parsing" ne s’effectue pas correctement ?

Je ne sais pas si il y a un debugger d'expressions régulières. Peut-être que @colinsurprenant sait ça...
En tout cas, déjà trouve la ligne qui ne fonctionne pas. Eventuellement partage là ici avec ton expression grok si tu n'y arrives pas.