2010-12-29 17 views
2

Tomcatで実行されているアプリケーションを最適に監視する方法に関するアイデアを探しています。私はTomcat Monitoringを参照するのではなく、 "Webアプリケーション"がアクティブ/ライブであることを確認します。Tomcat内でWebアプリケーションを監視する - (Tomcat監視ではない)

Tomcat(lamdbaprobe、Nagiosなど)を監視するためのツールはいくつかありますが、Tomcat内で実行されている実際のアプリケーションを監視したいと思っています。これは、Tomcatが動作している可能性がありますが、アプリケーションを利用できない状況がいくつかあることです。

私が考えている解決策は、アプリケーションにアクセスしようとするツールを書くことです。例えば、送信するJavaツールとHTTPリクエストを作成し、レスポンスを監視します。

これにはどのような方法が最適ですか?私はJMXについてたくさん言及していると聞いたことがありますが、それについてはあまりよく分かりません。それは上記を行うために使用することはできますか?これを行う既存のツールを知っていますか、より良いアプローチを知っていますか?

答えて

1

あなたが選んだのはJMXです。

最も単純な形式では、インターフェイスに情報をアクセスするためのそれぞれのクラスを作成し、このインスタンスをMBeanServerにデプロイするだけではありません。それは簡単です - ちょっとしたグーグルで1時間以内に解決策を思いつくべきです。

このアプラックを使用すると、たとえばTomcat自体とシームレスに統合できます。 Tomcatは、JMXを使用して情報を公開します。

コミュニケーションは標準に基づいており、jconsoleやjvisualVMなどの「JMX over RMI」を話すツールがたくさんあります。ほとんどの監視ソフトウェアにはJMXプラグインがあります(Nagiosなど - 私たちはHypericを使用しています)。

EDIT

まあ、それを他の方法でラウンドを見てみましょう。パブリッシュする情報を収集するクラスを作成します。確かに情報はMUT

class MyInfo { 
    public int getCurrentValue() { 
    // lookup this value wherever yoy want 
    return 42; 
    } 
} 

は、Webアプリケーションの起動時にこのMBeanを登録ContextListenerを書くインタフェース

interface MyInfoMBean { 
    public int getCurrentValue(); 
} 

を書く...公共どこか。

したがって、アプリケーションを変更する必要がある場合は、公開する情報が簡単に利用できるかどうかによって異なります。

+0

これは興味深いと思います。インターフェイスはアプリケーションの一部でなければならないのですか、それとも別のものですか?つまり、これを可能にするためにコードを変更する必要がありますか? – ziggy

+0

こんにちは、これを設定する例を教えてください。私はドキュメンテーションを見てきましたが、JMXを使用する初心者にはあまりにも混乱していることが判明しました。 – ziggy

+0

http://java.sun.com/developer/technicalArticles/J2SE/jmx.htmlには、3部のコードサンプルがあります。もっとシンプルなものはノーオペレーションです。 – mtraut

1

JVisualVMを試しましたか? Oracle SDKに付属しており、必要なものを提供する可能性があります。

+0

はい、これはJDKに付属していると思います。 Tomcatや実行中のJVMを監視しますが、Tomcatの内部で実行されているwebappにもっと興味がありました。私はJVisualVMがアプリケーションがアクティブであるかどうか私に教えてくれるとは思わない。それともできますか? – ziggy

1

私はかつてAppDynamics Liteで作業していましたが、Tomcatにデプロイされたアプリケーションのパフォーマンスを監視するのに本当に役立ちました。高度なバージョンがありますが、私はそれが無料であるとは思わないのです。ライト版は自由に使用できます。

0

私はちょうど新しいアプリケーションの性能も監視ツール

https://github.com/scouter-project/scouter/

サービスの監視を開いてきましたが、その後、Tomcatの監視本当に異なっています。 SCOUTERはウェブアプリケーションサービスの監視ツールです。 応答散布図(XLOGチャート)の各トランザクション(サービス要求)のパフォーマンス(profole/sqls)も確認できます

関連する問題