Jak usunąć licznik szeptem grafitowym?

14

Mam licznik stats.message.fooi chcę to przenieść stats.messages.foo.

Zaktualizowałem swój kod, aby zapełnić nowy licznik, jednak stary nadal istnieje.

Skończyłem czytać wszystko muszę zrobić, aby usunąć stat z grafitu jest usunięcie odpowiedniego szept plik na dysku, jednak wydaje się, że w ciągu kilku sekund po wyjęciu wspgo dostaje regenerowane (bez danych).

Jest to irytujące, jeśli chcę zmienić nazwę klucza, pod którym przechowywane są dane, ponieważ muszę pamiętać, który klucz jest prawidłowy.

Czy ktoś wie, jak trwale usunąć stary licznik?

hafichuk
źródło
Jeśli grafit nadal pisze, stats.message.fooponieważ coś, gdzieś wciąż przesyła tę metrykę. Sprawdziłbym twoją konfigurację statystyk.
Dave Wongillies,
Czy kiedykolwiek znalazłeś na to odpowiedź? Cierpi na ten sam problem.
David Elner
@dave Niestety nie. Minęło trochę czasu i przenieśliśmy się na nowy serwer grafitowy, więc problem sam się „rozwiązał”.
hafichuk

Odpowiedzi:

8

Powodem, dla którego tak wiele osób zmaga się z tym problemem (włącznie ze mną) jest to, że statsd (w zależności od jego ustawień) kontynuuje zapisywanie danych do starych statystyk (plików szeptanych), nawet po usunięciu pliku szeptanego (.wsp).

Sprawdź ustawienia statsd na stronie /etc/statsd/config.js (w systemie Ubuntu). Przykładowe ustawienia na https://github.com/etsy/statsd/blob/master/exampleConfig.js . Zalecałbym ustawienie wartości deleteIdleStats na wartość true , aby statsd nie zapisywał statystyk, gdy nie zostaną odebrane.

Wadą metody deleteIdleStats jest to, że grafit może mieć teraz wartości zerowe dla niektórych statystyk. Można to obsłużyć na warstwie wizualizacji (polecam Grafana).

Masz dwie opcje, aby zatrzymać regenerację usuniętych plików szeptanych:

  • po prostu zrestartuj statsd przy pomocy service statsd restartlub
  • zaktualizuj ustawienia statsd, aby nie wysyłać statystyk do zaplecza, jeśli statystyki nie zostaną odebrane ORAZ wtedy service statsd restart

Aby usunąć pliki wsp, których już nie potrzebujesz:

  1. Wyświetl listę plików do usunięciafind pathToUnwantedStatistic -print
  2. jeśli drukowane są tylko pliki, które chcesz usunąć, uruchom następujący wiersz, aby usunąć niechciane pliki find pathToUnwantedStatistic -delete
IvanD
źródło
1

Miałem podobny problem polegający na tym, że wpisy nadal istniały w graficie, chociaż dane nie były dostępne. Używam statsd i tam też nie było żadnych danych. Okazuje się, że oprócz plików wsp musiałem usunąć te foldery.

Dokładnie tak, użyłem nazwy komputera jako prefiksu dla statsd. Carbon utworzył folder dla każdej maszyny w np. / Opt / graphite / storage / whisper / stats / ip-0A215A08, gdzie przechował wsp dla moich metryk. Z tego powodu, kiedy usunąłem pliki wsp, nadal miałem kilka „folderów” w Graphite bez żadnych danych, które wciąż pojawiały się w interfejsie użytkownika.

Kontrola węgla / grafitu

  • Pliki .wsp
  • katalogi statystyk, których się pozbyłeś

W statsd (jeśli go używasz) sprawdź, czy nie ma już wskaźników, liczników ani liczników dla wskaźników, których chcesz się pozbyć. W tym celu możesz również telnet na swojej instancji (domyślny port 8126) i sprawdzać metryki za pomocą odpowiednich poleceń interfejsu administratora zamiast zabijać proces.

mrlabbe
źródło
0

Miałem ten sam problem. Udało mi się usunąć katalog, zabijając najpierw uruchomiony serwer StatsD. Być może jest to ten sam problem, który miałeś.

pkill statsd

Gerry
źródło
0

Zgadzam się z innymi, że coś wciąż musi przesyłać starą metrykę.

Idealnie byłoby rozwiązać problem na kliencie, aby rozwiązać ten problem, ale możesz również odrzucić tę metrykę po stronie serwera, używając funkcji czarnej listy szeptu .

Aby to zrobić:

  1. zapewnić USE_WHITELIST=Truew/opt/carbon/conf/carbon.conf
  2. dodaj irytujące dane do /opt/carbon/conf/blacklist.conf
7yl4r
źródło