Die Tage wurde ein interessantes Grafana Dashboard für einen Eigenbau Router (opnsense) vorgestellt. Da kam die Idee auf so ein Dashboard für die Fritzbox aufzubauen. Dazu findet man einiges im Netz. Eine Lösung war die Umsetzung mit einer InfluxDB die von einem Exporter Dienst befüllt wird. Das war schon ganz gut aber die Umsetzung ein wahres Grauen. Zumal die Docker Container eine InfluxDB2 statt eine InfluxDB installierten. Die InfluxDB musste mit UDP beliefert werden. Es begann eine Odysee der Fehlersuche. Konnte nun eine andere Lösung ausfindig machen. Die war schon sehr umfangreich und sehr informativer als die erste Lösung. So ist es nun mal in der Welt der Technik, man baut was auf und sieht dann eine andere und bessere Umsetzung.
Wer sich dieser Thematik antun will, sollte ein paar Grundlagen über Docker, Volumes, Container Namen und Expose Ports mitbringen. Es wird keine Schulungsanleitung für Docker zur Verfügung gestellt.
Level: Fortgeschritten – nicht für Anfänger/Einsteiger geeignet
Was wird benötigt:
- Eine Fritzbox https://amzn.to/3f2gWCo (*)
- Einen Docker Host mit docker-compose
- Grafana Dashboard https://grafana.com/grafana/dashboards/12579
- Alle Files gibt es hier zum Download https://git.unixweb.net/unixweb/fritzbox-grafana-monitor
Starte die Installation :
Download: git clone https://git.unixweb.net/unixweb/fritzbox-grafana-monitor
Einrichtung Fritzbox :
- Statusinformationen über UPnP übertragen.
- Benutzerkonto anlegen mit Namen und Passwort
Anpassung von Files
Es betrifft die Dateien „prometheus/prometheus.yml“ und „fritzbox-exporter-docker/docker-compose.yml“
Zeile 11/18/19/20 in der „docker-compose.yml“ anpassen
Nun „prometheus.yml“ anpassen.
Zeile 15 anpassen !
Einrichtung Grafana:
Starten der Container mit :
.. chown -r 1000:1000 /var/docker/data/monitoring/grafana
cd fritzbox-grafana-monitor docker-compose up -d cd fritzbox-exporter-docker docker-compose up -d Hier etwas Geduld mitbringen da der Container erst gebaut wird.
Starte Grafana Interface im Browser – http://<Docker-IP>:3000 und es sollte sich ein Anmeldefenster öffnen. Dort Anmeldung Benutzer und Passwort = admin/admin . Nach erfolgreicher Anmeldung wird man aufgefordert dem Benutzer “admin” ein neues Passwort zu vergeben. Im Anschluß eine neue Data Source Prometheus anlegen. Die URL lautet “http://mon_prometheus:9090” dann auf Testen und Speichern klicken.
Nun ein neues Dashboard erstellen mit “Import” und ID “12579” eintragen und auf Load klicken. Fertig.
Jetzt ist der Zeitpunkt, wo der Autor eine Belohnung erwartet
Er hat Zeit, Ressourcen, Technik, Infrastruktur und Server bereit gestellt.
Hier gehts lang zu https://ko-fi.com/joachimh
Alle Artikel auf dieser Seite sind mit einem sogenannte Provision-Links. Wenn du auf so einen Verweislink klickst und über diesen Link einkaufst, bekomme ich von deinem Einkauf eine Provision. Weiterführende Infos gibt es hier unter Punkt 8 in der Datenschutzerklärung https://blog.unixweb.de/datenschutzerklaerung/
Bei Fragen bitte die Kommentarfunktion nutzen.
Viel Spaß beim Aufbau und Monitoring der Fritzbox wünscht Joachim.
Hallo, vielen dank für die gute Arbeit. Ich hätte aber doch noch ein zwei fragen. Unter welchem OS installieren sie dies Monitoring? Ich habe versucht das unter Ubuntu zu installieren und scheitere schon an der ersten Befehlszeile „go get…“ ich hab das ganze auf Proxmox und in LXC. der Docker läuft ebenfalls in einem LXC. Können Sie mir einen tip geben?
Hallo Marco
da hab ich doch noch einen Arbeitsschritt unterschlagen. Mach einfach vorher :
$ sudo apt install golang
Beste Grüße Joachim
Hallo Marco
danke für den Hinweis hatte ich doch einen Befehl vergessen. Hab den jetzt nachgetragen.
$ sudo apt install golang
Viel Erfolg und Grüße Joachim
Mir geht es leider wir Marco. Ich hänge am gleichen Ort fest. Bei Eingabe der „go get…“ Befehlszeile erhalte ich folgende Meldung auf meinem virtuellen Ubuntu Server: github.com/prometheus/client_golang/prometheus
go/src/github.com/prometheus/client_golang/prometheus/go_collector.go:353:15: un defined: debug.ReadBuildInfo
Wäre sehr dankbar um einen Tipp, wie ich weiter machen könnte.
Hallo
hast Du einen Ordner go in $HOME ?
Wenn ja dann lösche diesen und probiere es nochmal mit go get …
Mach den Befehl ohne „sudo“ bitte.
Grüße Joachim
habe dies auch getestet, geht bei mir auch so nicht
Dann kommt am Freitag den 06.08.2021 ab ca 19:00 auf https://meet.unixweb.de/TechTalk
Dort besprechen wir Eure Probleme.
Grüße Joachim
Hallo Joachim
ich hab den Termin leider verpasst. ga es eine Lösung für die Fehlermeldung:
go/src/github.com/prometheus/client_golang/prometheus/go_collector.go:353:15: undefined: debug.ReadBuildInfo
ich hab den Ordner go gelöscht und auch dann klappt es nicht.
System: Raspberry pi4 mit docker und grafana
Mfg Sven
Hallo Sven
auf den Raspberry Pi 4 hab ich es nicht installiert. Ich hab es auf einen Ubuntu Server installiert.
Go auf einem Arm6/7 Prozessor zu installieren macht Probleme, außer man weiss was man tut.
Grüße Joachim
Hallo Sven
vermutlich ist dort eine veraltete GO-Version installiert.
Versuch mal nach der Beschreibung auf einem Raspberry Pi die neuere Version zu installieren:
https://www.jeremymorgan.com/tutorials/raspberry-pi/install-go-raspberry-pi/
Wie gesagt ich hab es auf einem Raspberry Pi nicht installiert und kann es nicht prüfen ob es laufen wird.
Auf Ubuntu hab ich es mit Go 1.13.8 zum laufen bekommen.
Grüße Joachim
installiere mal go so wie es hier beschrieben ist, https://www.jeremymorgan.com/tutorials/raspberry-pi/install-go-raspberry-pi/, danach hat es bei mir besser funktioniert
Was im Artikel nicht erwähnt wird, ist die Voraussetzung Ubuntu Server. Auf Debian tritt nämlich der hier in den Kommentaren mehrfach erwähnte Fehler auf:
go/src/github.com/prometheus/client_golang/prometheus/go_collector.go:353:15: undefined: debug.ReadBuildInfo
Die Anleitung funktioniert aber auch dann nicht, weil in der yml-Datei in Zeile 15 ein Service mon_cadvisor als Abhängigkeit angegeben wird, der aber gar nicht definiert wird. Da habe ich bislang noch keine Lösung dafür gefunden. Wenn ich die Zeile weglasse, zieht Docker sich zwar images, aber es gibt dann einen neuen Fehler, dass /etc/timezone sich nicht mounten lässt. Bin mir aber nicht sicher, ob ich das überhaupt richtig interpretiere.
Hallo
dann lass die Zeile 15 raus , der Prometheus sollte aber trotzdem starten und es ist keine Abhängigkeit sondern ein Dienst von dem Daten abgeholt werden und hat nichts mit Docker zu tun.
Wenn /etc/timezone nicht vorhanden ist oder 0 Byte hat dann muss diese erstellt und befüllt werden mit Europe/Berlin
Grüße , Joachim
Hey Joachim,
habe ich dann auch so gemacht. Seltsamerweise gab es dann anstelle einer Datei prometheus.yml ein gleichnamiges leeres Unterverzeichnis. Das habe ich gelöscht und die Datei reingelegt. Dann ging es. Merci.
Hallo,
jedesmal, wenn ich den Befehl
cd $GOPATH/src/github.com/sberk42/fritzbox_exporter
eingebe, passiert nichts und ich bekomme nur die Meldung „bash: cd: /src/github.com/sberk42/fritzbox_exporter: No such file or directory“. weiß jemand vielleicht, woran das liegt?
Auf welcher Hardware und Betriebssystem wird der Befehl ausgeführt ?
Was passiert wenn cd $HOME/go/src/github.com/sberk42/fritzbox_exporter eingibst?
Es wird offensichtlich die Variable $GOPATH nicht gesetzt.
Leider startet Grafana im Docker immer wieder neu. Bis auf Grafana läuft alles genau wie oben in der Anleitung angegeben.
Hallo Sebastian
was sagt das Docker Log ?
„docker logs mon_grafana“
Grüße Joachim
Kompletter Log handelt nur um genau den eine Passage:
GF_PATHS_DATA=’/var/lib/grafana‘ is not writable. You may have issues with file permissions, more information here: http://docs.grafana.org/installation/docker/#migration-from-a-previous-version-of-the-docker-container-to-5-1-or-later mkdir: cannot create directory ‚/var/lib/grafana/plugins‘: Permission denied
ich setz Ubuntu jetzt neu auf und probiere es erneut. Melde mich wenn es immer noch passiert nach neuversuch.
Hallo Joachim,
in deinen Beitrag sind einige Fehler drin.
/etc/systemd/system/fritzbox_exporter.service
so funktioniert der Service nicht.
Was soll das für eine IP-Adresse sein? 192.168.1.100 ?
Vom Prometheus-Server inkl. der fritzbox_exporter oder von der Fritte ?
Hallo topaLE
1.) Dann teile mit wo „die Fehler“ sind.
2.) Architekturbild angesehen, denn dort sollte erschichtlich sein was wo läuft mit welchen Ports
Grüße Joachim
Hallo Joachim,
Du hast da ein tolles Projekt aufgestellt, würde es sogar gerne bei mir umsetzen, aber es scheitert an ein 2 sehr entscheidenden Punkten:
– Ubuntu, ich bin gar kein Freund von Canonical und überhaupt kein Freund von Shuttleworth
– Quasi zwingender Einsatz von Docker (bin auch kein Freund von docker)
Auf meinem System habe ich prometheus, influxdb, grafana, telegraf, collectd (und einige andere Dinge) nativ ohne container laufen, unter debian (privat) wie auch unter centOS (beruflich).
So gesehen geht es, zumindest für mich, in erster Linie um den Prometheus-Exporter sowie das Grafana Dashboard. Siehst Du hier chancen, dass Du dieses wirklich interessante Projekt weniger speziell auf nur eine Linux-Version vernagelst (die zudem auf Deinen eigenen Server zugeschnitten ist) und es breiter nutzbar machst? Gibt ja genügend einsetzbare Exporter (varnish, haproxy, blackbox, die Liste ist lang) die unter so gut wie jedem Linuxderivat laufen.
Hallo Rolf
Danke für Deine Nachricht.
Im Prinzip kannst Du ja alles nativ auf eine beliebige Server Plattform installieren, es steht Dir frei es so zu tun wie Du es brauchst. Der Artikel soll ja nur eine Anregung sein und ist nicht die letzte Weisheit.
Du kannst alles auf Debian etc. installieren. Du musst halt die ganze Konfiguration jeweils in das Programm übertragen. Ich werde mit Sicherheit nicht mehr ohne Docker/Podman etwas aufbauen.
Der Aufwand , die Pflege steht in keinem Verhältnis zu einer Standalone Installation. Außerdem nutze ich ausschließlich Ubuntu Server und nicht Ubuntu Desktop.
So und jetzt kommt ein größeres Problem und zwar „go“ auf nicht Ubuntu Systeme.
Die oben genannte Software „fritzbox_exporter“ ist ( für mich) nicht kompilierbar. Es kommen massive Fehlermeldungen wenn ich es auf Debian kompilieren will. Die Software ist nur erfolgreich mit Go 1.13.8 zu kompilieren. Bin kein Programmierer deshalb kann ich hier nicht wirklich helfen.
Was aber geht wenn man das komplierte Binary auf einen Debian kopiert , inkl. aller nötigen JSON-Files. Werde hierzu im Git-Repo noch ein ZIP-File hochladen und es zur Verfügung stellen.
Also , virtuelle Maschine mit Ubuntu Server 20.04 aufsetzen, dann „fritzbox_exporter“ mit Go komplieren und dann Binary auf die Zielmaschine kopieren. Ubuntu Maschine wegwerfen, fertig!
Somit ist da nix auf meinen eigenen Server „vernagelt“.
So nun wünsche ich Dir viel Spaß beim installieren und konfigurieren.
Grüße Joachim
Hallo,
Zu:
Werde hierzu im Git-Repo noch ein ZIP-File hochladen und es zur Verfügung stellen.
gibt es da einen Link?
https://git.unixweb.net/unixweb/fritzbox-grafana-monitor
Hallo Joachim,
toller Guide, werde es nachher mal austesten.
anstelle eines selbst zu bauenden Exporters welcher als Systemdienst läuft, werde ich allerdings einen eingedockterten fritzbox_exporter nehmen 🙂
https://github.com/sberk42/fritzbox_exporter/blob/master/docker-compose.yml
Hallo Dirk
Danke für den Hinweis, irgendwie hatte ich das mit dem Docker echt übersehen. Werde da mal den Artikel dazu erweitern.
Beste Grüße Joachim
Hi,
vielen Dank für die Anleitung, jedoch scheint der Traefik Teil zu fehlen?
Wenn ich im Ordner „exporter“ docker-compose up -d eingebe bekomme ich folgenden Fehler.
WARN[0000] network traefik_proxy: network.external.name is deprecated in favor of network.name
service „mon_prometheus“ depends on undefined service mon_cadvisor: invalid compose project
Hallo Marc
ich hab diesen Teil rausgenommen da ich diesen nicht benötige.
Trage einfach nur dass hier ein, dann sollte es starten:
depends_on:
– mon_node-exporter
Grüße Joachim
Hallo Joachim,
Ich bin exakt an der gleichen stelle hängen geblieben wie du damals mit InfluxDB und collecdt und so weiter.
Jetzt habe ich deine Lösung mit Prometheus und dem Exporter für Prometheus gelesen und bin grundsätzlich erst mal gehypte das so umzusetzen.
aber ich scheitere an ein paar Kleinigkeiten.
Da ich das ganze auf meinem Synology zum laufen bringen möchte auf dem schon Portainer läuft, würde es sich anbieten, dass ich einen einzigen Stack für das Monitoring aufsetze. Also einen DockerCompose.
Aktuell scheitere ich aber daran, dass ich nicht weiß, welches Volume der Exporter denn gerne hätte.
außerdem verwirrt mich die scheinbare Redundanz in deiner Beschreibung wenn es um den exporter geht. Am Anfang beschreibst du den FritzboxExporterFürPrometeus und dann später in deinem Compose wird was von „prom/node-exporter:latest“ beschrieben.
ist das das gleiche? brauche ich beides?
Hallo Kevin
es ist nicht das gleiche und Du brauchst beides.
Schau Dir die Docker Prozessliste an:
https://blog.unixweb.de/wp-content/uploads/2022/08/Docker-Container-Prozess-Uebersicht.png
Was das Volume betrifft steht es doch im docker-compose.yml drin:
mon_node-exporter:
image: prom/node-exporter:latest
container_name: mon_node-exporter
restart: unless-stopped
volumes:
– /etc/localtime:/etc/localtime:ro
– /etc/timezone:/etc/timezone:ro
– /proc:/host/proc:ro
– /sys:/host/sys:ro
– /:/rootfs:ro
In dem Prozessdiagramm stand halt der „mon_node-exporter“ nicht drin.
Aber ich denke mal, der ist dafür verantwortlich, die metric Daten des Fritzboxexporters aufzubereiten und Prometheus selbst zur Verfügung zu stellen. So lese ich das zumindest gerade heraus.
ich habs es jetzt schon mal geschafft den Fritzboxexporter (dotwee/fritzbox-prometheus-exporter)
zum laufen zu bekommen und ich sehe auch, dass der sich korrekt mit meiner FritzBox verbindet und so wie es aussieht auch alle metric daten ausliest.
wo ich jetzt hänge ist: wie verwende ich diese Daten im nächsten schritt. die müssen doch sicher irgendwo gespeichert werden
Hallo Kevin
ich kann nicht jeden abholen, man muss sich auch mal etwas einarbeiten.
Hast Du den Menüpunkt „Einrichtung Prometheus“ schon gemacht ?
Grüße Joachim
Moin,
so mittlerweile läuft alles. Wie kann ich eine andere config beim Fritz Exporter konfigurieren? Ich habe eine FritzBox 7590 7.29.
Gruß
Marc
Hi Joachim,
vielen herzlichen Dank für deinen Beitrag und deine Antworten auf die vielen Fragen! Habe alles zum Laufen bekommen. Dank der Docker-Ergänzung fügt es sich nahtlos in meine Monitoring Landschaft ein. DANKE!
Meine nun einzige Herausforderung – analog zu meinem Vorposter Marc – ist die FritzBox Version 7.29. Nicht alle Daten entsprechen wohl mehr den hier angegeben Metriken zur 7.25 (https://git.unixweb.net/jhummel/fritzbox-grafana-monitor/src/branch/master/exporter/all_available_metrics_7590_7.25.json) Das wird jetzt noch ne Fummelei 🙂 Tipps sind herzlich willkommen!
Vielen Dank und viele Grüße
Alex
Hi Joachim,
vielen Dank für die Anleitung. Ich bekomme folgenden Fehlermeldung:
docker-compose up -d
ERROR: Service ‚mon_prometheus‘ depends on service ‚mon_cadvisor‘ which is undefined.
Viele Grüße
Michael
Hallo Michael
nimm das aktualisierte Docker File von hier:
https://git.unixweb.net/unixweb/fritzbox-grafana-monitor
Grüße Joachim
Hallo,
ich erhalte beim erstellen des docker-compose up -d den Fehler das er versucht und directory zu einem File zu mounten und anscheinend ist die prometheus.yml eine directory.
ERROR: for mon_prometheus Cannot start service mon_prometheus: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error mounting „/exporter/prometheus/prometheus.yml“ to rootfs at „/etc/prometheus/prometheus.yml“: mount /exporter/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml (via /proc/self/fd/6), flags: 0x5000: not a directory: unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type
ERROR: for mon_prometheus Cannot start service mon_prometheus: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error mounting „/exporter/prometheus/prometheus.yml“ to rootfs at „/etc/prometheus/prometheus.yml“: mount /exporter/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml (via /proc/self/fd/6), flags: 0x5000: not a directory: unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type
Hallo,
erst mal vielen Dank für den Beitrag leider steh ich ein bisschen auf dem Schlauch. Jetzt wurden hier so viele Dinge in den Kommentaren diskutiert das ich nicht mehr weiß ob die Anleitung wie sie oben steht überhaupt aktuell ist. Sowohl für Docker als auch für GO.
Denn z.B. „cp fritzbox_exporter /usr/local/share/exporter“ ist beim docker ebenfalls nicht vorhanden.
Danke schon mal im vorraus.
darf ich mich der bitte anschließen, die Anleitung mal ins reine zu schreiben? so ist es leider weder verständlich noch nutzbar aktuell.
Hallo zusammen, das wäre echt klasse, wenn man das hier updaten könnte. Ich bekomme auch einen Fehler nach dem anderen.
Hallo zusammen
so ich hab den Artikel nun massiv überarbeitet und erwarte da auch eine kleine Anerkennung dass ich mir nochmal die Mühe gemacht habe , dass Git-Repo und den Artikel zu überarbeiten.
https://ko-fi.com/joachimh hier geht es weiter 🙂
Grüße Joachim
Hallo Joachim,
das ist super, dass du dir die Zeit genommen hast.
Nur als Neuling im Bereich weiß ich leider nicht was ich schon zu Anfang machen soll.
Der Link https://git.unixweb.net/unixweb/fritzbox-grafana-monitor.git führt mich ja zu github, aber wie und wohin soll ich was kopieren?
Sorry für die dumme Frage.
Gruß Mark
Hallo Mark
hier nochmal der Hinweis: Level: Fortgeschritten – nicht für Anfänger/Einsteiger geeignet
Download: git clone https://git.unixweb.net/unixweb/fritzbox-grafana-monitor
Grüße Joachim
hi, danke fürs überarbeiten. ich musste für meine Box mit aktueller Firmware 7.56 noch eine „all_available_metrics…“-Datei aus einer bestehenden kopieren, erst seitdem krieg ich Daten angezeigt.
Nur bekomme ich bei Total Download und Total Upload „N/A“ anzeigt, und die Meldung „Status: 500. Message: bad_data: exceeded maximum resolution of 11,000 points per timeseries. Try decreasing the query resolution (?step=XX)“.
An welcher Stelle, ob in Prometheus oder Grafana, und wo dort dann genau ich was anpassen muss, finde ich aber mit Google leider nicht heraus. kannst du helfen? hast du das Problem auch?
Hallo Mark
1.) Du musst die Zeiten „Apply Times“ auf weniger als 2 Tage stellen dann wird es richtig angezeigt.
Grüße Joachim
ok, danke für den Tipp, das rumspielen an der Zeit hat funktioniert. manche Werte funktionieren prima, etwa 30 Tage oder 90 Tage, nur manche wie „this month so far“ und „last 2 days“ zeigen „N/A“. aber damit kann ich leben, danke! 🙂
Hallo Mark
wenn ich solche Kommentare lese, geht es nur darum eine 1-Klick Lösung irgendwo herunter zu laden und hoffen dass es funktioniert. Und wenn es nicht funktioniert, den Autor nerven und sich ja nicht in die Thematik einarbeiten und mal selbst ein paar Tage damit sich beschäftigen. Du kannst das Grafana Board genau an Deine Wünsche anpassen, dem steht nichts entgegen.
Dazu empfehle ich diese Lektüre zu lesen: https://grafana.com/docs/
Außerdem wundere ich mich, dass nicht eine Spende oder ein Newsletter Abo für die Überarbeitung eingegangen ist. So viel , bzw. so wenig ist das Euch wert? Das ist eine tolle Wertschätzung. Ich werde mir mein Konzept der
zukünftigen Artikelbereitstellung massiv überdenken und mehr Bezahl Content bereitstellen.
Geiz ist geil ist auf meinem Blog kein Thema mehr.
Beste Grüße Joachim
Moin,
Danke für die Arbeit echt cooles Projekt und schön gestaltetes Dashboard.
Lg Palumi
Vielen Dank und auch für die Spende.
Beste Grüße , Joachim
Hallo – kann mir jemand sagen, was ich als Gateway-URL in der fritzbox-exporter-docker/docker-compose.yml eintragen muss? Ich habe jetzt die externe IP von meinem Router mit dem Port 49000 eingegeben (der stand schon da).
Bekomme folgenden Error: https://cdn.svx.gg/07.10_D73cs6PcjHMG.png
Mit freundlichen Grüßen
Lucas Eder
Hallo Lucas
dort musst Du die IP-Adresse der Fritzbox eintragen.
Grüße Joachim
Hallo Joachim,
hast du das Projekt schon einmal mit Podman probiert?
Bei mir scheitert das Deployment mit folgender Meldung beim traefik_proxy network.
exit code: 0
[‚podman‘, ’network‘, ‚exists‘, ‚traefik_proxy‘]
Traceback (most recent call last):
File „/usr/lib/python3.9/site-packages/podman_compose.py“, line 719, in assert_cnt_nets
compose.podman.output([], „network“, [„exists“, net_name])
File „/usr/lib/python3.9/site-packages/podman_compose.py“, line 1097, in output
return subprocess.check_output(cmd_ls)
File „/usr/lib64/python3.9/subprocess.py“, line 424, in check_output
return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
File „/usr/lib64/python3.9/subprocess.py“, line 528, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command ‚[‚podman‘, ’network‘, ‚exists‘, ‚traefik_proxy‘]‘ returned non-zero exit status 1
Viele Grüße,
Marc
Hallo Marc
nein hab ich noch nicht. Hast Du schon mal nachgeschaut ob das Netzwerk „traefik_proxy“ existiert und hast dies schon mal gelöscht und neu angelegt ?
Beste Grüße , Joachim
Hi Joachim,
danke für die Skripte. Habe festgestellt, dass nur die letzten 15 Tage an Daten gespeichert werden.
Wie kann man
–storage.tsdb.retention.time=365d
zu Prometheus durchreichen? Habe paar Ansätze versucht. Klappt bei mir jedoch noch nicht.
Grüße
Rafal
Hallo Rafal
die Retention Policy musst Du bei der InfluxDB einstellen und nicht bei Prometheus. Denn dort liegen die Daten.
CREATE RETENTION POLICY "meter1_policy_name" ON "db_meter_home" DURATION 365d REPLICATION 1 DEFAULT
show retention policies on db_meter_home
Grüße Joachim
Hallo Joachim,
doch doch, bei Prometheus. In deiner Lösung ist ja Prometheus und kein IndluxDB im Einsatz.
Und ich habe gestern doch noch eine Lösung gefunden. Ich habe docker-compose so
services:
mon_prometheus:
image: prom/prometheus:latest
container_name: mon_prometheus
restart: unless-stopped
volumes:
– /etc/localtime:/etc/localtime:ro
– /etc/timezone:/etc/timezone:ro
– $PWD/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
command:
– –config.file=/etc/prometheus/prometheus.yml
– –storage.tsdb.retention.time=365d
erweitert. Das führte auch dazu, dass die History, d.h. die letzte 15 Tage, weg war. Aber das ist halt so schlimm.
Schöne Grüße
Rafal
Hallo Rafal
Du hast Recht sorry, ich war da gerade gedanklich in einem anderen Projekt unterwegs. Wenn das so funktioniert ist doch alles wunderbar. Ich hab da nie darüber nachgedacht es länger zu speichern, da die Anforderung einfach für mich nicht bestand.
Grüße Joachim
Hallo Joachim,
ich bekomme einen Fehler in Grafana beim Datasource hinzufügen.
Nach ein paar Stunden Lösung suchen bekomme ich es leider immer noch nicht hin.
Post „http://mon_prometheus:9090/api/v1/query“: dial tcp: lookup mon_prometheus on 192.168.65.7:53: no such host – There was an error returned querying the Prometheus API.
Prometheus und Grafana sind auf dem selben Docker Host.
Vielleicht hast du ja eine Idee…. 🙂
Hallo Philipp
wie heißt Dein Dockercontainer für Prometheus ?
Wenn dieser NICHT „mon_prometheus“ heißt findet Docker diesen auch nicht.
Und beide Container Grafana und Prometheus müssen im gleichen Netzwerk sein von Docker „fritzbox-grafana-monitor_default“
Überprüfe das mal.
Grüße Joachim