Сбор метрик приложения в Java (необязательно. Net)

Я хочу иметь возможность динамически отображать различные метрики времени и подсчета из моих приложений. Perf4j работает довольно хорошо для временных, но не позволяет производить подсчет таким простым способом, о котором я знаю.

например, я могу сделать

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

, и вы можете установить эти метрики, чтобы они регистрировались с любым интервалом и он отлично с этим справляется. Но иногда я хочу сделать что-то вроде

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

. Я мог бы вызвать библиотеку таймера perf4j 50 раз, но это ужасный и неэффективный способ записать мои показатели в журнал. Кто-нибудь знает хорошую библиотеку с открытым исходным кодом, которая может выполнять оба типа показателей? Также было бы здорово, если бы он мог отслеживать журналы выходных показателей и выгружать их в централизованную БД. Кроме того, если вы знаете хороший веб-интерфейс с открытым исходным кодом для построения графиков и отображения такого рода данных, мне бы это было очень интересно. Похоже, это должно быть то, в чем многие люди нуждались раньше.

12
задан jtruelove 30 September 2010 в 21:45
поделиться