Ich habe einen Schalter an stats.message.foo
und möchte ihn verschieben stats.messages.foo
.
Ich habe meinen Code aktualisiert, um den neuen Leistungsindikator zu füllen, der alte ist jedoch noch vorhanden.
Ich habe alles gelesen, was ich tun muss, um eine Statistik von Graphit zu entfernen, um die entsprechende Whisper-Datei auf der Festplatte zu löschen. Es scheint jedoch, dass sie innerhalb weniger Sekunden nach dem Entfernen neu wsp
generiert wird (ohne Daten).
Dies ist ärgerlich, wenn ich den Schlüssel, unter dem die Daten gespeichert sind, umbenennen möchte, da ich wissen muss, welcher Schlüssel der richtige ist.
Weiß jemand, wie man den alten Zähler dauerhaft entfernt?
stats.message.foo
wegen irgendetwas weiter schreibt , sendet irgendwo immer noch diese Metrik. Ich würde mir deine Statistik ansehen.Antworten:
Der Grund, warum so viele Menschen mit diesem Problem zu kämpfen haben (ich eingeschlossen), ist, dass statsd (abhängig von seinen Einstellungen) weiterhin Daten in alte Statistiken (Flüsterdateien) schreibt, selbst nachdem Sie die Flüsterdatei (.wsp) gelöscht haben.
Überprüfen Sie Ihre Statistikeinstellungen unter /etc/statsd/config.js (unter Ubuntu). Beispieleinstellungen unter https://github.com/etsy/statsd/blob/master/exampleConfig.js . Ich würde empfehlen, deleteIdleStats auf true zu setzen, damit statsd keine Statistiken schreibt, wenn sie nicht empfangen werden.
Der Nachteil von deleteIdleStats ist, dass Graphite jetzt für bestimmte Statistiken Nullwerte haben kann. Dies kann auf der Visualisierungsebene erledigt werden (ich empfehle Grafana).
Sie haben zwei Möglichkeiten, um die Regeneration gelöschter Whisper-Dateien zu stoppen:
service statsd restart
oder neu startenservice statsd restart
So löschen Sie nicht mehr benötigte wsp-Dateien:
find pathToUnwantedStatistic -print
find pathToUnwantedStatistic -delete
quelle
Ich hatte ein ähnliches Problem, bei dem noch Einträge in Graphite vorhanden waren, obwohl keine Daten verfügbar waren. Ich verwende statsd und es gab dort auch keine Metriken. Es stellte sich heraus, dass ich diese Ordner zusätzlich zu den wsp-Dateien löschen musste.
Mein genauer Fall ist, ich habe den Computernamen als Präfix für statsd verwendet. Carbon erstellte einen Ordner für jede Maschine in z. B. / opt / graphite / storage / whisper / stats / ip-0A215A08, in dem der wsp für meine Metriken gespeichert wurde. Aus diesem Grund hatte ich nach dem Löschen der wsp-Dateien immer noch eine Reihe von "Ordnern" in Graphite ohne Daten, die noch in der Benutzeroberfläche angezeigt wurden.
Überprüft Carbon / Graphit
Vergewissern Sie sich auf statsd (falls Sie es verwenden), dass es keine Anzeigen, Timer oder Zähler mehr für die Metriken gibt, die Sie entfernen möchten. Zu diesem Zweck können Sie auch eine Telnet-Verbindung zu Ihrer Instanz herstellen (Standardport 8126) und mit den entsprechenden Befehlen der Admin-Oberfläche nach Metriken suchen , anstatt den Prozess abzubrechen .
quelle
Ich hatte das gleiche Problem. Ich konnte das Verzeichnis entfernen, indem ich zuerst einen StatsD-Server beendet habe, der ausgeführt wurde. Vielleicht ist dies das gleiche Problem, das Sie hatten.
pkill statsd
quelle
Keine der obigen Antworten hat in meinem Fall geholfen. Ich habe diesen in stackoverflow gefunden, der mir geholfen hat: /programming/15501677/deleted-empty-graphite-whisper-files-automatically-re-generating#answer-20011928
quelle
Ich stimme anderen zu, dass die alte Metrik noch gesendet werden muss.
Im Idealfall können Sie das Problem auf Ihrem Client beheben. Sie können diese Metrik jedoch auch serverseitig ablehnen, indem Sie die Blacklist-Funktionalität von Whisper verwenden .
Um dies zu tun:
USE_WHITELIST=True
in/opt/carbon/conf/carbon.conf
/opt/carbon/conf/blacklist.conf
quelle