2013-03-19 11 views
7

Sto tentando di eliminare alcune vecchie metriche di sussurro di test di grafite senza alcun successo. Posso eliminare le metriche rimuovendo i file. (Vedi: How to cleanup the graphite whisper's data?) Ma, in pochi secondi, i file vengono rigenerati (sono vuoti di metriche e rimangono in quel modo poiché nulla crea nuove metriche in quei file). Ho provato a fermare il carbonio (carbon-cache.py stop) prima di cancellare i file, ma quando ricomincio il carbonio (carbon-cache.py --debug start &) tornano indietro.Eliminato/Vuoto Graphite Whisper File che si rigenerano automaticamente

Come eliminare definitivamente questi file/metriche in modo che non tornino mai?

risposta

5

Stai eseguendo statsd o qualcosa di simile?

Ho avuto lo stesso problema ed era perché statsd stava svuotando i contatori che aveva in memoria dopo che ho cancellato i file sussurro. Ho riciclato statsd e i file rimangono cancellati ora.

Spero che questo aiuti

+1

Sì, sto facendo funzionare statsd. Come posso riciclare statsd? – Jeff

6

La nuova versione StatsD ha un opzione per non inviare zeri dopo filo più, ma solo ciò che è effettivamente inviato ad esso. Se si attiva questa opzione, i file di bisbigli non dovrebbero essere ricreati: https://github.com/etsy/statsd/blob/master/exampleConfig.js#L39

+2

L'impostazione di questo flag fa sì che i grafici abbiano valori nulli, che visualizzano i punti di dati "non collegati". Pertanto su ciascun grafico, dovresti abilitare l'impostazione "Disegna zero come zero" per risolvere questo problema. Ti capita di sapere di altre soluzioni? Sto incontrando lo stesso problema. – Adam

+2

deleteIdleStats: true –

+0

Sono disponibili diverse impostazioni: 'deleteIdleStats', che si applica a tutte le statistiche e 'deleteGauges',' deleteTimers', 'deleteSets' e' deleteCounters'. Questi valori predefiniti sono falsi, il che significa che statsd invierà sempre 0 (valore precedente per gli indicatori) quando i dati non vengono ricevuti per un intervallo temporale. – chrsalln

17

Per impostazione predefinita, Statsd continuerà a inviare 0 per i contatori che non ha ricevuto nel periodo di svuotamento precedente. Ciò fa sì che il carbonio ricrei il file.

Diciamo che vogliamo eliminare un contatore chiamato "bad_metrics.sent" da Statsd. È possibile utilizzare l'interfaccia di amministrazione Statsd in esecuzione sulla porta 8126 per impostazione predefinita:

$ telnet <server-ip> 8126 
Trying <server-ip>... 
Connected to <server-name>. 
Escape character is '^]'. 

Usa 'aiuto' per ottenere una lista di comandi:

help 
Commands: stats, counters, timers, gauges, delcounters, deltimers, delgauges, quit 

si può usare 'contatori' per vedere un elenco di tutti i contatori:

counters 
{ 'statsd.bad_lines_seen': 0, 
    'statsd.packets_received': 0, 
    'bad_metrics.sent': 0 } 
END 

sua il 'delcounters', 'deltimers', e 'comandi delgauges' che rimuovono metriche da statsd:

delcounters bad_metrics.sent 
deleted: bad_metrics.sent 
END 

Dopo aver rimosso la metrica da Statsd, è possibile rimuovere il file sussurro ad esso associato. In questo esempio caso, che sarebbe:

/opt/graphite/storage/whisper/bad_metrics/sent.wsp 

o (in Ubuntu):

/var/lib/graphite/whisper/bad_metrics/sent.wsp 
+0

C'è un altro modo per aprire l'interfaccia di amministrazione di statsd? Dire da un prompt dei comandi di root sul server? (L'interfaccia telnet non funziona sul nostro server per qualche motivo) – Jeff

+0

Nota: Sul mio server funziona, ma quando ho telnet in esso viene visualizzata la parola "ERRORE". Ma in realtà sta andando bene! – Jeff

+0

Nota: per me l'eliminazione dei contatori non era sufficiente. Ho riavviato statsd e questo sembrava risolvere il problema. – Jeff

0

Noi non eseguono statsd, ma facciamo correre carbon-aggregator che serve uno scopo simile. Il riavvio ha risolto un problema simile.