Ich habe diese Frage einige Male auf der Mailingliste gesehen, aber keine zufriedenstellende Antwort erhalten.
Wie lässt sich am besten überwachen, dass die Pipeline nicht festsitzt? Clients -> Logstash -> Elasticsearch.
Logstash und insbesondere Elasticsearch sind anfällig für Ressourcenmangel. Sie sind beide fantastisch darin, dort weiterzumachen, wo sie aufgehört haben, aber wie genau beobachten die Leute ihre Beobachter?
Meinungen willkommen.
monitoring
elasticsearch
logstash
Dan Garthwaite
quelle
quelle
Antworten:
Persönlich überprüfe ich tatsächlich, dass Redis immer noch auf dem zentralen Protokollierungshost, der sich vor LS + ES befindet, aus der Warteschlange entfernt wird.
dh:
redis-cli llen logstash
ist kleiner als eine feste Zahl.Dies bedeutet möglicherweise nicht, dass Protokolle überhaupt in Redis angezeigt werden, aber das könnte auch überprüft werden, denke ich.
So etwas wie eine Überprüfung,
redis-cli info | grep total_commands_processed
die vielleicht immer weiter zunimmt?quelle
total_commands_processed
immer inkrementieren, wenn nicht von logstash, der es dann vominfo
Befehl selbst abfragt ?Ich verwende zabbix in meiner Umgebung, aber ich nehme an, dass diese Methode auch in anderen Setups funktionieren könnte. Ich habe den folgenden Befehl konfiguriert, den zabbix verwenden darf:
Dies gibt die Anzahl der insgesamt festgeschriebenen Elasticsearch-Datensätze zurück. Also nehme ich diesen Wert und dividiere durch die Anzahl der Sekunden seit der letzten Probe (ich überprüfe jede Minute). Wenn diese Zahl unter einen beliebigen Grenzwert fällt, kann ich darauf hinweisen. Ich benutze auch zabbix, um zu überprüfen, ob die Logstash-PID gestorben ist, und alarmiere dies auch und führe den folgenden Befehl aus:
Dies gibt 1 zurück, wenn der Clusterzustand rot geworden ist (gelb und grün sind in Ordnung), was ich auch alarmieren kann.
quelle
Überprüfen Sie, ob die Protokolle pro Sekunde an Ihrem endgültigen Endpunkt (z. B. Elasticsearch) über einer bestimmten Basislinie liegen.
Führen Sie eine End-to-End-Überprüfung durch. Wenn Ihr Endergebnis ordnungsgemäß funktioniert, wissen Sie, dass alle Schritte in der Pipeline ordnungsgemäß funktionieren.
Wenn Sie häufig Probleme haben oder eine bessere Selbstbeobachtung benötigen, beginnen Sie, jedes Stück der Pipeline wie oben beschrieben wie Redis zu instrumentieren.
quelle
Wir verwenden verschiedene Ansätze:
quelle