Sono una newbee di Coda Hale Metrics. Ho creato un'app di esempio che sta avendo un semplice metodo di servizio web RESTful.Persist Coda Hale Informazioni metriche
Ho utilizzato strumenti Meter, Timer e Counter forniti dal framework Coda Hale Metrics per tracciare il numero di richieste, il rapporto di richiesta e la durata della richiesta. Attualmente invio queste informazioni alla console utilizzando la Console Reporter of Metrics (si prega di trovare il codice sotto).
@Override
public void configureReporters(MetricRegistry metricRegistry) {
registerReporter(ConsoleReporter.forRegistry(metricRegistry).build())
.start(30, TimeUnit.SECONDS);
}
Ho alcune domande su Coda Hale Metrics.
(1) Attualmente il contatore mostra il numero totale. della richiesta effettuata da quando il server è attivo. C'è un modo per ottenere il no. di richieste fatte in un periodo di riferimento specifico (es: - contare per 1o 30 secondi = conto1, contare per 2o 30 secondi = conto2, ecc ...)
(2) È possibile ottenere la durata di ciascuna richiesta using Timer? Attualmente il timer mostra i tassi minimi, massimi e medi di tutte le richieste fatte.
(3) Esistono possibilità di mantenere tali dati metrici in un DB esterno (ad esempio: - MySQL)?
Di seguito è riportato il mio metodo di servizio REST.
@RequestMapping(value = "/examplerest", method = RequestMethod.GET)
@ResponseBody
@Metered(name="exampleRestMetered")
@Timed(name="exampleRestTimed")
@Counted(name="exampleRestCounted", monotonic=true)
public String exampleRest(
HttpServletResponse response) {
/**
some logics here
*/
}
Apprezzo la vostra guida su questo.
Grazie.
Si potrebbe voler controllare Twitter [zipkin] (http://zipkin.io). – brettw