2010-09-30 17 views
12

Chcę być w stanie dynamicznie udostępniać różne dane dotyczące czasu i liczenia z moich aplikacji. Perf4j działa całkiem dobrze na czas, ale nie pozwala na liczenie w prosty sposób, o którym jestem świadomy.Zbieranie danych aplikacji w języku Java (opcjonalnie .Net)

na przykład mogę zrobić

StopWatch dbWriteTime = new Log4JStopWatch("ServiceName:DBWrite"); 
dbWriteTime.start(); 
... execute DB stuff here 
dbWriteTime.stop(); 

i można ustawić te parametry, aby zalogować bez względu na przerwy i robi świetną robotę to. Ale czasami chcę zrobić coś jak

Metric metric = new Metric("ServiceName:OrdersPerRequest"); 
metric.put(50); 

mogę zadzwonić timer perf4j lib 50 razy, ale to jest straszne i nieefektywne Hack, aby moje dane w dzienniku. Czy ktokolwiek zna dobrą bibliotekę open source, która może wykonywać oba rodzaje danych? Również, gdyby mógł monitorować logi danych wyjściowych i zrzucać je do centralnej bazy danych, która byłaby świetna. Dodatkowo, jeśli znasz dobry przedni koniec sieci open source do tworzenia wykresów i wyświetlania tego rodzaju danych, byłbym bardzo zainteresowany tym. Wydaje się, że to musi być coś, czego wielu ludzi wcześniej potrzebowało.

Odpowiedz

22

Najbardziej lubię bibliotekę Cody Hale'a o metrics, ale być może zechcesz też zajrzeć na Java Simon. Inne opcje obejmują stajistics, JAMon i parfait.

+0

Mam to prymitywne pytanie, dlaczego musimy korzystać z bibliotek do ich pomiaru? W jaki sposób używanie licznika z biblioteki różni się od używania zmiennej liczb całkowitych i zwiększania tego? – mayooran

Powiązane problemy