web-dev-qa-db-fra.com

Surveillance des fichiers journaux à l'aide de certains exportateurs de mesures + Prometheus + Grafana

J'ai besoin de surveiller des fichiers de journal très différents pour les erreurs, le statut de réussite, etc. Et j'ai besoin de saisir les métriques correspondantes à l'aide de Prometheus et de les afficher dans Grafana +. Prometheus + Grafana sont acceptables. Je les utilise déjà beaucoup avec différents exportateurs tels que node_exporter ou mysql_exporter, etc. Les alertes dans le nouveau Grafana 4.x fonctionnent également très bien.

Mais j'ai tout à fait du mal à trouver un programme/exportateur approprié qui puisse analyser les fichiers de log "à la volée" et en extraire des métriques.

Jusqu'ici j'ai essayé:

  • mtail ( https://github.com/google/mtail ) - fonctionne, mais la version existante ne peut pas contrôler facilement plus de fichiers - en général, il ne peut pas lier un programme mtail spécifique (reçu pour analyse) à un fichier journal spécifique + je ne peux pas ajouter facilement le nom du fichier journal dans la balise 
  • grok_exporter ( https://github.com/fstab/grok_exporter ) - fonctionne mais je ne peux extraire que des informations limitées + une instance ne peut surveiller qu'un seul fichier journal, ce qui signifie que je devrais démarrer plusieurs instances exportant sur plusieurs ports et configurer tous les hors dans prometheus - qui fait trop de nouveaux points de défaillance
  • fluentd prometheus exportateur ( https://github.com/kazegusuri/fluent-plugin-prometheus ) - fonctionne, mais semble ne pouvoir extraire que des métriques très simples et je ne peux effectuer aucune analyse avancée des expressions rationnelles d'une ou plusieurs lignes à partir du fichier journal

Quelqu'un at-il ici une solution réellement opérationnelle pour surveiller les métriques avancées à partir de fichiers journaux en utilisant "un exportateur" + Prometheus + Grafana? Ou au lieu d'exporter un programme dont je pourrais récupérer les résultats en utilisant la passerelle Prometheus Push. Merci.

9
JosMac

Jetez un coup d'oeil à Telegraf . Il prend en charge les journaux de suivi à l’aide des plugins d’entrée logparser et tail Pour exporter des métriques en tant que noeud final prometheus, utilisez le plugin prometheus_client output. Vous pouvez également appliquer des agrégations à la volée. J'ai trouvé plus simple de configurer plusieurs fichiers journaux que grok_exporter ou mtail

5
LazyS

Ce sont les 3 réponses pour obtenir des données de log dans Prometheus.

Vous pouvez également chercher à obtenir ce que les journaux produisent pour exposer directement les métriques Prometheus.

1
brian-brazil