PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Grafana Verstaendnissfrage



Huhn Hur Tu
22.11.16, 13:01
Hi,

ich schaue mir gerade Grafana und habe eine Elasticsearch angebunden.

Ich habe mir zwei Templates angelegt



- $Machines {"find": "terms", "field": "host.raw"}
- $Ressource_Type {"find": "terms", "field": "name.raw", "query":"host.raw:$Machines"}

welche mit die Moeglichkeit geben, einmal nach Host und zum zweiten nach einer Funktion (name) zu filtern.

Mein Problem ist nun, dass ich nur sinnfreien Output im Graphen bekomme, die Daten sollten nun aus dem Feld "Value" kommen, ich verstehe aber nicht wie ich die Metrik da reinbekommen.

marce
22.11.16, 15:00
Ich kenne Grafana nicht, würde aber vermuten, daß Du ja irgendwo die entsprechen ES / Lucene-Abfrage hinterlegen musst.

http://docs.grafana.org/datasources/elasticsearch/#metric-query-editor

Oder verstehe ich die Frage gerade komplett falsch?

Huhn Hur Tu
23.11.16, 07:16
Hm.. nicht ganz, das aber auch weil ich nicht weiss welche Frage konkret zu stellen ist.

Mal von der anderen Seite, hier mal der Content einer Ressource die aus der Elasticsearch kommt


2016-11-22 01:00:03,015 { "category": "memory", "name": "HeapMemoryUsage_committed", "value": 2143993, "unit": "KB", "clustername": "cluster1", "host": "cluster1-01.domain.tld", "nodeno": "2", "maincategory": "spp_monitoring", "slot": "1"}


Ich will im Graph den Wert value ueber die Zeit angezeigt bekommen, und zwar fuer jeden gewaehlten Host, ignoriere mal den "name" der Ressource, die ist in dem Screenshot anders, mir geht es um die Basiscs.

Ich habe ein Template mit dem Query

- {"find": "terms", "field": "host.raw"}

um die Hosts auszuwaehlen, was funktioniert, sowie den Query

- {"find": "terms", "field": "name.raw", "query":"host.raw:$Machines"}

um die Funktionsname (Feld name) auswaehlen zu lassen, auch das tut.

Nun will ich Graph fuer die ausgewaehlte Hosts und die ausgewaehlten Funktionen, je einen Verlauf ueber Zeit auf dem Wert "value" haben.

Das ist was ich bisher nicht verstehe.

In den Dokuvideos klicken die das so schoen zusammen, aber irgendwie ist das bei mir nicht so.

Gruss Stefan

Huhn Hur Tu
23.11.16, 07:51
So ein wenig weiter bin ich,

nachdem ich jetzt mit dem Group Setting in den Metrics rumgespielt habe, danke hier fuer den Link, habe ich wenigstens etwas das nach welchelnden Graphen aussieht.

- Group by , terms, value

hiermit komme ich auf die value Felder.

Jedoch habe ich einen Host und eine Funktion ausgewaehlt und bekomme neun Verlaeufe angezeigt,, was auch immer das fuer Daten sind

Huhn Hur Tu
25.11.16, 10:48
Ein Knoten hat sich geloest, das zusammenklicken funktioniert nicht bei Elasticsearch, sondern nur bei Graphite, heisst, ich muss in den Metrics mit lucene/json queries arbeiten

Gruss Stefan

florian0285
27.11.16, 22:34
*Troll* Du mit deinem exotischem Zeug, da fehlen mir zum Ende des Jahres die Worte*TrollEnde* [emoji1]

Huhn Hur Tu
29.11.16, 08:15
Nix Troll, lausige Doku zur Verwendung mit Elasticsearch

fork
29.11.16, 09:38
@HHT: Er nicht Dich mit Troll gemeint, sondern sich selbst.

Im übrigen hat einer unserer Programmierer auch Grafana angeschleppt. Er meinte, das wäre vor allem deswegen cool, weil damit auch Docker-Instanzen überwachen kann.

marce
29.11.16, 09:45
:-) ich hab' das System gerade auch im Visir - Grafana + Prometheus.

Ich such immer noch ein System, mit dem ich so den kompletten grafischen Kladderadatsch von Munin, Monit, Icinga, Smokeping, ... abfrühstücken kann...

Huhn Hur Tu
29.11.16, 10:36
Das ist doch einfach,

- schreib deine Checks selbst, bzw. exportiere die die Daten aus Icinga/Nagios/RHQ/...
- schreibe die auf nen Loghobel
- Importiere die Sachen in eine Elasticsearch/Graphite/...
- Visualisiere mit Grafana, whatever
- schreibe eine simple Alarming Engine ohne Featureitis, x Schwellwerte, Notification Targets, Baseline Calc, Bereinigung von laenger nicht mehr vorhandenen Ressourcen, Autoimport
- wenn du kein Bock auf SQL gefummel hast, schreibe dir ein kleines Webfrontend zur Verwaltung (Schwellwerte / Alarming Targets) und Visualisierung von Alarming/Notification Listen

:D

Das ist der Aktuelle Stand meiner Erfahrung, aber dann passt es auch auf die infrastruktur

marce
29.11.16, 10:44
Tja, und genau auf das "schreibe" und "selbst" hab' ich irgendwie keinen Bock.

Nice-2-have wäre irgendwie ein System, welches das alles von sich aus bietet und gepflegt wird und problemlos Daten importieren kann oder gar selbst herausfindet, verschiedene Views bereitstellen kann, ...

So außer- oder ungewöhnlich kann das ja alles nicht sein von den Anforderungen her.

Ich teste hier schon längers div. Systeme und irgendwie komme ich immer irgendwann an einen Punkt, wo ich dann sagen muss "oh, schade - soweit ja hübsch aber mit der Einrschränkung mach' ich mir den Stress produktiv nicht, weil ich dann wieder handgestricktes Zeugs irgendwo ranflanschen muss" - sprich ich auch gleich die akutelle Bastel-Lösung beibehalten kann, weil der Aufwand der Umstellung von "Bastelsystem A auf Bastelsystem B" sich nicht so recht lohnt...

fork
29.11.16, 11:07
Ich arbeite seit ca. 3 Jahren mit Check_MK und vermisse bis jetzt nichts. Natürlich habe ich den ein oder anderen Check selbst geschrieben, den ich gebraucht habe, aber an Infrastruktur ist da echt schon sehr viel da.

Speziell bzgl. Views soll die Enterprise Edition noch mehr bieten.

Wenn man nachhaltig auf OpenSource setzen will, ist Icinga 2 ein ganz heisser Kandidat.

Mach doch mal einen eigenen Thread dazu auf und beschreibe etwas genauer, was Du suchst.

Nachtrag 11:10

Eigene Ergänzungen aka Basteln finde ich nicht immer schlecht, bzw. nur dann, wenn jeder eigene Eingriff nachhaltig Arbeitsaufwand mit sich bringt bzw. eine unsaubere Struktur wachsen lässt. Bei Check_MK ist die Software grundsätzlich in Basisbestandteil und lokale Ergänzungen aufgeteilt(separater local Dateibaum). Das führt dazu, dass Updates erst einmal grundsätzlich funktionieren und alle eigene Änderungen nicht komplett rausgekickt sind, sondern immer noch ganz normal vorhanden. Ggf. müssen nur die eigenen Checks an inkompatible Veränderungen angepasst werden. Ich habe mittlerweile 3 grössere Updates durchgeführt. Das war alles überschaubar bzgl. des Aufwandes. Das erste Update habe ich gebraucht, um zu verstehen, wo ich meine Änderungen korrekterweise ablege :) Alle weiteren Updates waren dann noch einfacher.

Huhn Hur Tu
29.11.16, 11:34
Ich persoenlich vermisse eine simple Alarming engine bei der man sich nicht den Wolf klickt, bzw. mein keine spezielle Sprache koennen muss, bilk zu bedienen, vor allem wenn man 20k Ressourcen verwaltet

fork
29.11.16, 12:33
Ich persoenlich vermisse eine simple Alarming engine bei der man sich nicht den Wolf klickt, bzw. mein keine spezielle Sprache koennen muss, bilk zu bedienen, vor allem wenn man 20k Ressourcen verwaltet

Wovon sprichst Du gerade? Bzw. an welche Software denkst Du bei an "den Wolf klicken" bzw. "eine spezielle Sprache können müssen"?

---

Ich habe bei mir alle Dienste(~7 K Dienste) in Servicelevel gruppiert und dass ist erstmal ein Stück Arbeit, das anhand der individuellen Situation auch heraus zu arbeiten. Anhand der Servicelevel habe ich dann 10 Regeln(per Interface zusammengeklickt), wie, an wen und zu welchen Zeiten alarmiert wird. Grundsätzlich ist Alarmierung IMHO eine eher komplexe Geschichte, die auch eine feine Einstellung benötigt, wenn man die Alarmierung zur Entspannung aller Mitarbeiter auf das Mindestmass herunterschrauben will. Und toll ist das dann schon, aber mit Sicherheit eines nicht: Simpel. (Wie man im angehängten Screenshot sieht, kann man da 1000 Sachen einstellen und das ist gut so.)

Aber welcher erfahrene Admin hat das noch nicht erlebt, dass ein Monitoringsystem total im Eimer ist, weil es Hunderte oder gar Tausende Mails schickt.

Im Anhang mal eine Detailseite zu einer dieser Regeln.

Nachtrag 19:40 Uhr


Nice-2-have wäre irgendwie ein System, welches das alles von sich aus bietet und gepflegt wird und problemlos Daten importieren kann oder gar selbst herausfindet, verschiedene Views bereitstellen kann, ...

Also grundsätzlich kenne ich das jetzt vom eigenen eingesetzten Monitoring-System so, da ich da eine oder mehrere Zahlen reinwerfe und es kommt ein Graph raus. So wie ich das verstehe, kann z. B. Zabbix das ganz genauso und ich würde mich wundern wenn's bei den anderen Monitoringsystemen anders ist. Anpassen kann man dass dann über eigene Views noch. Bei mir ist das dann pnp4nagios, was sich da im Hintergrund um die Aufbereitung kümmert und was man mit individuellen Templates erweitern kann.