Metrik aus Service entfernen

Hallo zusammen,

in einem Service habe ich eine Metrik, welche nicht mehr benötigt wird.
Weiß jemand, wie ich diese Metrik und die dazugehörige RRD sauber aus Checkmk entfernen kann?

Wenn ich im Verzeichnis ~/var/checkmk/rrd die entsprechende .info und .rrd Datei umbenenne, wird im Service der Hinweis ausgegeben, dass die Metrik nicht erstellt werden konnte, da die Dateien nicht gefunden wurden.
Demnach muss noch an einer anderen Stelle eine Zuordnung zwischen Service und Metrik erfolgen.
In der Dokumentation konnte ich jedoch keine Antwort finden.

Wenn du alle Metriken eines Services löschen willst, kannst du einfach die *.rrd- und *.info-Datei des Services löschen. Du musst aber zuvor die Site stoppen, weil die RRD-Daten vom rrdcached gecached werden und nur alle N Sekunden (?) auf Platte geschrieben werden. Also

omd stop
rm ~/var/check_mk/rrd/HOSTNAME/SERVICE.*
omd start

Wenn du hingegen von einem Service mit z.B. drei Metriken nur eine löschen willst, dann findest du hier eine Anleitung. Wenn du Glück hast, dann befindet sich “deine” Metrik am Ende der Liste in der *.info-Datei. Ansonsten wird es etwas komplizierter, aber das ist in dem anderen Post erklärt.
Auf jeden Fall musst du auch dafür die Site vorher stoppen.

Zum Löschen muss man wissen, wie *.info- und *.rrd-Datei zusammenhängen:

  • In der info-Datei sind die Namen der Metriken in einer Liste abgelegt.
  • In der rrd-Datei sind keine Namen im Klartext festgelegt (obwohl das ginge), sondern nur Nummern für die Datasources.
  • Die erste Metrik aus der Info-Datei ist im rrd-File als ds[1] abgelegt, die zweite Metrik als ds[2] usw.

Das Prinzip beim Löschen ist nun:

  1. In der Datei SERVICENAME.info musst du die unnötige Metrik löschen (einfach mit einem Texteditor).

  2. Mit “rrdtool info SERVICENAME.rrd | grep last_ds” rausfinden, welche der Metriken innerhalb der Datei zuletzt nicht mehr geschrieben wurde. Das ist dein Löschkandidat. Der muss auch mit der Position in der Liste aus Schritt 1 übereinstimmen.

  3. Angenommen, du möchtest die Metrik 3 löschen. Das geht dann einfach mit
    rrdtool tune SERVICE.rrd DEL:3

  4. Falls das die letzte Metrik in der Liste war, bist du fertig. Ansonsten musst du die nachfolgenden Metriken noch im rrd-File umbenennen (sozusagen die Lüscke schließen):
    rrdtool tune SERVICE.rrd -r 4:3 # 4→3 umbenennen
    rrdtool tune SERVICE.rrd -r 5:4 # 5→4 umbenennen
    rrdtool tune SERVICE.rrd -r 6:5 # 6→5 umbenennen

2 Likes