2011-12-29 29 views
9

Twitterからのostrichプロジェクトは、JVMベースの統計とカスタム統計の多くを追跡したい私のユースケースに適しているようです。TwitterのOstrichライブラリに相当するJavaはありますか?

https://github.com/twitter/ostrich/

しかし、私のコードベースではなくスカラ座よりも、純粋なJavaの+春3.0であるので、私は私の場合のためにダチョウを使用することができますか?

答えて

14

私はMetricsを使用しています。これは、ゲージ、カウンター、メーター、ヒストグラム、タイマーをサポートしているOstrichと非常に似ています。同様に、あなたのサービスのヘルスチェックを監視する仕組み。

JMXまたはHTTPを介してレポートを取得し、GangliaやGraphiteなどのバックエンドをレポートすることもできます。

+0

このライブラリを指摘していただきありがとうございます。これは非常に便利です。 – Shamik

6

MBean、JMX、およびJConsoleアプリケーションの組み合わせは、ローカルおよびリモートの両方のJVMにネイティブに提供されます。

拡張機能javax.managementパッケージ(http://www.oracle.com/technetwork/java/javase/tech/javamanagement-140525.html)は、これをサポートします。http://www.oracle.com/technetwork/java/javase/tech/javamanagement-140525.html

JMX + JConsole監視パラダイムは、JVMでネイティブであり、Java SE 1.6で実装するのがますます容易になります。

Java仮想マシン(Java VMは)内蔵された計測 はあなたがJavaの管理 拡張(JMX)テクノロジを使用して、それを監視および管理することが可能であること。 http://docs.oracle.com/javase/6/docs/technotes/guides/management/jconsole.html: JConsoleを使用している標準的な方法は、任意のJVM(クライアント、サーバー、ローカル、またはリモート)を監視する詳細

http://docs.oracle.com/javase/6/docs/technotes/guides/management/agent.html#gdevsから。一度に複数のJConsoleクライアントを開いて、異なるインスタンスを監視することができます。あなたが最初にこの引数を使用してJVMのサービスを開始

1):

com.sun.management.jmxremote.port=portNum 

2)次に、リモートクライアント(あなたが監視を行いたい1)の上に、あなたはこのJVM

の監視を開始することができます異なるサーバー上で

1をJVM Analyticsを統合するための

jconsole hostName:portNum 

)はクリアストーンのアプリを試してみてください。私は私を使用していませんトン、しかし、スクリーンショットは、あなたが持っているように見える分散envirnomentの種類をサポートするために表示されます。

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

Java用のクリアストーンは、JMX経由でメトリックを提供するアウトオブボックスコレクターが含まれています。 ClearStoneサーバーは、任意のJava MBeanから情報を収集して関連付けることができます。

**最後に、ダチョウやjconsoleを別の比較のために:**

Remote Probing of Scala/Java Application in Runtime

3

Heapsterと統合されたオーストリッチを使用できます。

Heapster

Heapsterは、Google perftoolsと互換性のある出力でJVM プロセスのヒーププロファイリングを行うためのエージェントライブラリを提供します。 Heapsterの目標は、 生産設定で意味のある(サンプリングされた)ヒーププロファイリングを行うことです。

あなたはダチョウを使用し、heapsterを使用してプログラムを実行した場合、あなたは そうのような実行時のヒーププロファイルを生成することができます

ダチョウの統合:

$カール「はlocalhost:?9990/pprof /ヒープ一時停止= 10 & sample_period = 1024 '> /tmp/profこれは、 のサンプリング期間が1kBで、10秒間ヒープの増加を収集します。

0

多くの一般的なJava(およびJDBC)メトリックのグラフを含むサーブレットを実行するhttp://code.google.com/p/javamelody/をご覧ください。 LGPLです。

関連する問題