OPNsense Forum

International Forums => German - Deutsch => Topic started by: David-007 on November 29, 2021, 09:09:52 pm

Title: Telegraf > InfluxDB > Grafana Aktueller Upload/Download-Traffic
Post by: David-007 on November 29, 2021, 09:09:52 pm
Hallo zusammen,

ich hoffe, ihr könnt mir weiterhelfen. Sicher habe ich nur ein Brett vorm Kopf aber ich komme nicht weiter.

Nutze den Telegraf-Adapter in der OPNsense und spiele die Daten in eine InfluxDB ein. In Grafana lasse ich mir dann über ein Dashboard Daten visualisieren. Die Templates zu den Dashboards funktionieren bei mir nicht, vielleicht ist InfluxDB mit V2 oder Grafana zu neu. Habe mir aber alles selbst zusammengestellt und bis auf den aktuellen Upload/Download-Traffic funktioniert auch alles.

Ich habe nun herausgefunden, dass ich den wert für den aktuellen Upload/Download nicht einfach auslesen kann sondern errechnen muss, siehe:
https://github.com/influxdata/telegraf/blob/master/plugins/inputs/net/NET_README.md

Die Sample-Query lautet:
Code: [Select]
SELECT derivative(first(bytes_recv), 1s) as "download bytes/sec", derivative(first(bytes_sent), 1s) as "upload bytes/sec" FROM net WHERE time > now() - 1h AND interface != 'all' GROUP BY time(10s), interface fill(0);
Jetzt komme ich aber nicht mehr weiter. Habe die Query in der InfluxDB eingefügt, bekomme aber nur Fehler. Auch in Grafana kann ich den Code nicht einlesen.
Ich habe wenig bis keine Programmierkenntnisse, kann mir vielleicht jemand mit einfachen Worten erklären was ich tun muss? Ich wäre sehr dankbar!

Will im Homeoffice meiner Frau auf die Finger klopfen können wenn sie wieder zu viel Upload verbraucht und meine Videokonferenz deswegen ruckelt   ;D

Danke an euch!

Title: Re: Telegraf > InfluxDB > Grafana Aktueller Upload/Download-Traffic
Post by: MenschAergereDichNicht on November 30, 2021, 11:57:54 am
> Will ... meiner Frau auf die Finger klopfen

 :D keine gute Idee.

Ich bin mir nicht sicher, ob ich weiterhelfen kann, aber anderen würde es bei der Suche bestimmt helfen, wenn du die Fehler hier dokumentierst. D.h. welche Meldungen tauchen bei dem Statement auf?

> ... Auch in Grafana kann ich den Code nicht einlesen.

Mir ist nicht ganz klar, wie sich das äußert. D.h. gibst du das Statement ein und es gibt eine Fehlermeldung wegen der Syntax oder kann man in Grafana kein InfluxQL-Statement eingeben?

Ich gehe erstmal von einem Syntaxfehler aus.

Mir ist die Influx Abfragesprache nicht ganz geläufig. Bei SQL mache ich es bei Problemen allerdings so, dass ich  versuche mich dem Ziel schrittweise anzunähern. D.h. das Statement erstmal auf ein funktionierendes Minimum reduzieren und dann weiter ausbauen. Eventuell kannst du so den Fehler eingrenzen.

Beispiel:

(Hinweis: Ohne Where-Bedingung könnte es etwas länger dauern...)

 Funktioniert
   SELECT bytes_recv as "download bytes/sec", bytes_sent as
    "upload bytes/sec" FROM net ;
?

Funktioniert
   SELECT bytes_recv as "download bytes/sec", bytes_sent as
    "upload bytes/sec" FROM net WHERE time > now() - 1h;
?

Funktioniert
   SELECT bytes_recv as "download bytes/sec", bytes_sent as
    "upload bytes/sec" FROM net WHERE time > now() - 1h GROUP BY time(10s), interface fill(0);
?

Funktioniert
   SELECT derivative(first(bytes_recv), 1s) as "download bytes/sec", derivative(first(bytes_sent), 1s) as
    "upload bytes/sec" FROM net WHERE time > now() - 1h GROUP BY time(10s), interface fill(0);
?


Nachtrag:

Vermutlich wäre es auch zielgerichteter, wenn du solche speziellen Fragen zu anderer Software in den entsprechenden Foren (Grafana, Influx) stellen würdest.
Title: Re: Telegraf > InfluxDB > Grafana Aktueller Upload/Download-Traffic
Post by: David-007 on November 30, 2021, 09:35:33 pm
Vielen Dank für deine Antwort. Ja, ich kann auch noch einmal schauen es in spezielleren Foren zu posten. Habe nur Sorge, dass mir da wiederum nicht gut wegen der speziellen OPNsense-Abfrage gut weitergeholfen werden kann. Vielleicht habe ich ja Glück und es gibthier auch jemanden, der sich die Visualisierung mit Grafana eingerichtet hat und mir einen Screenshot zeigen kann, wie es funktioniert.

Habe es mit den Vereinfachungen getestet, schon die Erste bringt aber in Grafana nur Fehler (siehe Screenshot).
Dasselbe Ergebnis, wenn ich es direkt in der InfluxDB ausführe (siehe zweiten Screenshot).

Title: Re: Telegraf > InfluxDB > Grafana Aktueller Upload/Download-Traffic
Post by: MenschAergereDichNicht on November 30, 2021, 10:06:09 pm
Komisch. Keine Ahnung warum er an der Stelle kein Komma haben will.

Das Semikolon kann man evtl. weglassen aber das Komma wird eigentlich benötigt (https://docs.influxdata.com/influxdb/v1.8/query_language/explore-data/#the-basic-select-statement). Den Zeilenumbruch könntest du vorsichtshalber rausnehmen. Also alles in einer Zeile eingeben.

Bist du sicher, dass du als Abfragesprache "InfluxQL" eingestellt hast? (Das Internet meint, da kann man auch etwas anderes auswählen)

Evtl. könntest du versuchen die Abfrage nicht direkt per copy&paste in das Abfrage-Feld einzufügen, sondern durch 'clicken' zu erzeugen.
Wenn ich es richtig gesehen habe, kann man doch in Grafana das Statement über GUI-Elemente angeben (d.h. wähle die Tabelle, wähle die Zusatzbedingung, etc.)? Irgendwo müsste da auch der erzeugte Gesamtausdruck zu sehen sein. Wenn du das mit der Vorgabe vergleichst, fällt dir evtl. auf wo das Problem liegt.

Title: Re: Telegraf > InfluxDB > Grafana Aktueller Upload/Download-Traffic
Post by: David-007 on November 30, 2021, 10:41:36 pm
Ich habe es mit und ohne Semikolon und auch mit Semikolon ohne Leerzeichen und gleiches mit/ohne Komma probiert. Mit anderen Fehlern aber im Ergebnis gleich.

Ich habe ja das fertige Dashboard (https://grafana.com/grafana/dashboards/13386) genommen, es zeigt jedoch keine Werte an. Ich vermute es liegt an InfluxDBV2 oder der aktuellsten neuen Grafana-Version.
Daher habe ich mir die GUI schon nachgebaut, indem ich in Kibana mich durch die Werte gehangelt habe und die Syntax aus dem Query-Builder in Kibana dann in Grafana importiert habe.

Bis auf WAN Rate In/WAN Rate Out hat das auch alles funktioniert nur muss bei den beiden o. g. Feldern ja laut Doku im Telegraf-Adapter den Wert errechnen.
Du schreibst du weißt nicht, ob ich die Abfrage an der richtigen Stelle einfüge. Ich weiß es auch nicht, wüsste aber nirgendwo anders als in der Query in Grafana oder in Kibana.

Ich habe auch noch einmal die JSON-Ausgabe für das Dashboard-Feld angezeigt, das bei mir nicht funktioniert. Dort steht bei Query "" (siehe Screenshot). In der JSON-Ausgabe des Test-Feldes, in dem ich deine Query eingetragen habe, wird dies in der JSON-Ausgabe hinter "query": eingetragen.

Mir ist nun wirklich nicht klar, wie in dem originalen Dashboard (siehe Link oben) die Berechnung der WAN Rate überhaupt funktioniert. In der JSON-Datei ist keine Rechnung/Query zu finden. Dann müsste das ja in Kibana stattfinden, wie und wo finde ich aber nirgendwo.
Ich bin hier mit dem Latein am Ende. Es ist halt wirklich schade, dass der Telegraf-Adapter nicht einfach die Bandbreite ausliest sondern überhaupt erst dieses Rechnen notwendig macht.
Title: Re: Telegraf > InfluxDB > Grafana Aktueller Upload/Download-Traffic
Post by: MenschAergereDichNicht on November 30, 2021, 10:48:47 pm
Stell mal bitte die Sprache um von Flux auf InfluxQL (im letzten Screenshot unten links zu sehen). Das ist vermutlich das Problem.
Title: Re: Telegraf > InfluxDB > Grafana Aktueller Upload/Download-Traffic
Post by: David-007 on November 30, 2021, 11:16:49 pm
Ich habe es noch einmal mit einem deiner Beispiele sowohl in InfluxDB als auch in Grafana probiert.
Immer mit Fehlern (siehe Screenshot).
Title: Re: Telegraf > InfluxDB > Grafana Aktueller Upload/Download-Traffic
Post by: David-007 on November 30, 2021, 11:18:17 pm
Hier der Fehler in Grafana
Title: Re: Telegraf > InfluxDB > Grafana Aktueller Upload/Download-Traffic
Post by: David-007 on November 30, 2021, 11:18:35 pm
In Grafana kann ich die Eingabesprache nicht umstellen (siehe Screenshot 3). Es öffnet sich dann nur die Doku in einem neuen Fenster (https://docs.influxdata.com/influxdb/v2.1/query-data/get-started/).
Title: Re: Telegraf > InfluxDB > Grafana Aktueller Upload/Download-Traffic
Post by: MenschAergereDichNicht on December 01, 2021, 08:09:06 am
1) Die angegebenen Beispiele sind in der Sprache "InfluxQL". Dein Grafana/InfluxDB ist auf "Flux" eingestellt. Deswegen passt das nicht zusammen. Da Flux, im Gegensatz zu InfluxQL, sehr von SQL abweicht und ich aktuell keine Zeit habe mich damit zu beschäftigen, kann ich damit leider nicht weiterhelfen.

2) Es müsste nach wie vor möglich sein, die Abfrage in der Grafana-GUI durch Klicken zu erzeugen. Ich weiß allerdings nicht, ob man dort auch Konstrukte wie die Ableitung hinbekommt.

3) *Falls* du dich entschließt die Sprache umzustellen (ist evtl. keine gute Idee, weil es sein kann, dass InfluxQL langfristig nicht mehr unterstützt wird. Das weiß ich aber nicht, weil ich dafür nicht tief genug in der Influx-Community drin bin), dann sollte das laut Internet an der "DataSource" umzustellen sein (siehe zum Beispiel https://www.influxdata.com/blog/how-grafana-dashboard-influxdb-flux-influxql/).
Es kann allerdings sein, dass deine übrigen Abfragen dann nicht mehr funktionieren, weil die ja Flux verwenden... . D.h. die müsstest du dann vermutlich auch umstellen.
Title: Re: Telegraf > InfluxDB > Grafana Aktueller Upload/Download-Traffic
Post by: Patrick M. Hausen on December 01, 2021, 08:46:20 am
Grafana hat übrigens auch ein Community-Forum  ;)

Ich lese hier bisher nur interessiert mit, weil ich noch InfluxDB 1.8 verwende, da es Version 2 auf FreeBSD noch nicht gibt. Außerdem füttere ich die DB mit collectd und nicht mit Telegraf ... also alles etwas anders.

Gruß
Patrick
Title: Re: Telegraf > InfluxDB > Grafana Aktueller Upload/Download-Traffic
Post by: MenschAergereDichNicht on December 01, 2021, 02:19:34 pm
Ich bin mir etwas unsicher wie in diesem Forum die Regeln bezüglich externer Links sind. Aber solange mich niemand abmahnt, denke ich, dass es in Ordnung ist Links zu posten.

Deswegen anbei noch zwei Funde bei denen es um das Thema InfluxDB 2 und InfluxQL geht.

Scheint etwas komplizierter zu sein...

https://community.influxdata.com/t/how-to-connect-grafana-to-influxdbv2-by-influxql-method/17377/4

https://community.grafana.com/t/grafana-issue-connecting-to-influxdb-2-0-3-influxql/42757

Im Prinzip ist es vermutlich nicht sonderlich schlau zu versuchen gegen die Tools anzukämpfen. D.h. es ist wahrscheinlich besser sich mit Flux auseinanderzusetzen. D.h. "man" sollte versuchen die Abfrage entweder über die GUI oder als geschlossenes Flux-Statement umzusetzen.
Title: Re: Telegraf > InfluxDB > Grafana Aktueller Upload/Download-Traffic
Post by: David-007 on December 04, 2021, 10:41:18 am
Vielen Dank für eure Hilfe und Unterstützung!

Ich habe jetzt auf Influx V1 "downgegradet" und nun funktionieren die Dashboards in Grafana ohne Probleme. Ich werde auch erst einmal dabei bleiben, für eine Umstellung fehlt mir zu viel Wissen um die Transformation der vielen vorhanden Vorlagen nun auf die neue Sprache in Influx V2 umzustellen.

Danke für die vielen guten Denkanstöße hier. Habt eine schöne Weihnachtszeit.