2011-12-29 13 views

risposta

14

ho usato Metrics. È molto simile allo struzzo con supporto per indicatori, contatori, metri, istogrammi e timer; Oltre a un meccanismo per monitorare lo stato di salute dei tuoi servizi.

È possibile ottenere il report su JMX, o HTTP così come segnalare backend come Ganglia e Graphite.

+0

Grazie per aver segnalato questa libreria. Questo è molto utile. – Shamik

6

La combinazione di MBeans, JMX e l'applicazione JConsole fornisce questo in modo nativo sia per JVM locali che remote.

Le estensioni del pacchetto javax.management (http://www.oracle.com/technetwork/java/javase/tech/javamanagement-140525.html) supportano questo: http://www.oracle.com/technetwork/java/javase/tech/javamanagement-140525.html.

Il paradigma di monitoraggio JMX + JConsole è nativo nella JVM e sempre più semplice da implementare in java SE 1.6 su.

La macchina virtuale Java (Java VM) è dotato di strumentazione che consente di monitorare e gestire utilizzando la tecnologia Java Management Extensions (JMX). Da http://docs.oracle.com/javase/6/docs/technotes/guides/management/agent.html#gdevs

dettagli

Il metodo standard monitorare qualsiasi JVM (client, server, locale o remoto) utilizza JConsole: http://docs.oracle.com/javase/6/docs/technotes/guides/management/jconsole.html. È possibile aprire più client JConsole contemporaneamente, monitorando diverse istanze.

1) Per prima cosa lanciare i servizi di JVM con questo argomento:

com.sun.management.jmxremote.port=portNum 

2) Poi, il vostro client remoto (quello che si vuole fare il monitoraggio), è possibile avviare il monitoraggio questo JVM

jconsole hostName:portNum 

per l'integrazione di JVM Analytics su diversi server

1) Prova l'applicazione Clearstone: non ho usato i t, ma le immagini sembrano supportare il tipo di envirnoment distribuita che ti sembra di avere:

http://www.evidentsoftware.com/products/clearstone-for-java/

Clearstone per Java include un collezionista out-of-the-box che fornisce metriche tramite JMX. Il server ClearStone può raccogliere e correlare le informazioni da qualsiasi MBean Java.

** Infine, per un altro confronto tra struzzo e jconsole: **

Remote Probing of Scala/Java Application in Runtime

3

È possibile utilizzare Ostrich integrato con Heapster.

Heapster

Heapster fornisce una libreria agente per fare il profiling heap per JVM processi con uscita compatibile con Google perftools. L'obiettivo di Heapster è essere in grado di eseguire un profiling heap significativo (campionato) in un'impostazione di produzione .

integrazione struzzo

Se si utilizza struzzo, ed eseguire il programma con heapster, è possibile generare profili runtime mucchio in questo modo:

$ ricciolo 'localhost: 9990/pprof/mucchio di pausa = 10 & sample_period = 1024 '> /tmp/prof Questo raccoglierà la crescita dell'heap per 10 secondi, con un periodo di campionamento di 1kB pari a .

Problemi correlati