Comment parser les logs de HaProxy

Bonjour,

Je débute sur la stack elastic et j'aimerai parser des logs de HaProxy.

exemple :

Dec  4 09:09:51 f6047fe55160 local0.info haproxy[1]: 10.255.0.2:11323 [04/Dec/2018:09:09:51.199] http http.actuators.css-1/http.actuators.css-1.1 0/0/1/12/14 200 664 - - ---- 406/11/0/0/0 0/0 "GET /node-1/css/health HTTP/1.1"

J'ai testé plusieurs patterns mais en vain.

Merci par avance.

Bonjour,

Je débute également dans le parsing. Si tu ne trouves pas de pattern pré configuré il y a cet outil -> Grok Constructor

Il m'a permis de bien comprendre le fonctionnement. Et je me suis également renseigné sur les expressions régulières pour paufiner le parsing.

1 Like

Bonjour,

Je connais ce site mais merci quand même :slight_smile:
Dans la version 6.5 de kibana tu as aussi un Grok Debugger dans l'onglet Dev Tools.

En fait comme HaProxy est load balancing trés connu, je me suis dis qu'il doit exister un pattern.

Genre: https://github.com/logstash-plugins/logstash-patterns-core/blob/master/patterns/haproxy

?

Aussi ceci: Need help in creating grok patterns for haproxy logs

1 Like

Oui :slight_smile: mais là c'est la fonctionnalité du "builder" qui est intéressante :smile:

J'ai testé les patterns du premier lien mais ça ne match pas mais je vais prendre comme base et essayer d'adapter.

Merci.

Tu as raison.

Voici ma solution :

%{SYSLOGTIMESTAMP:timestamp} %{DATA:Aloha_name} %{DATA:SyslogFacility} %{DATA:Haproxy_process}: %{DATA:client_ip}:%{INT:client_port} \[%{HAPROXYDATE:accept_date}\] %{NOTSPACE:frontend_name} %{NOTSPACE:backend_name}/%{NOTSPACE:server_name} %{INT:Tq}/%{INT:Tw}/%{INT:Tc}/%{INT:Tr}/%{INT:Tt} %{INT:http_status_code} %{NOTSPACE:bytes_read} - - ---- %{INT:actconn}/%{INT:feconn}/%{INT:beconn}/%{INT:srvconn}/%{NOTSPACE:retries} %{INT:srv_queue}/%{INT:backend_queue} "%{WORD:Method} %{URIPATHPARAM:request} HTTP/%{NUMBER:http_version}"

https://cdn.haproxy.com/wp-content/uploads/2017/07/aloha_load_balancer_memo_log.pdf

1 Like

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.