2012-04-20 3 views
4

私たちはVisualVMを使ってCF8のメモリーリークを追跡しようとしていますが、ツールを100%稼働させることはできません。基本的には、メモリサンプリングを除いてすべてが表示されます。 「JVMはサポートされていません」と言っています。VisualVMとColdfusion 8:なぜメモリサンプリングが利用できないのですか?

しかし、他のすべての機能は動作します(私たちはCPUサンプリングを行うことができ、メモリではありません)。この種の奇妙なものが見つかりました。メモリ以外のものはすべて実行できるので、これを可能にするために別のJVM引数を指定する必要があるのでしょうか?

いくつかの他の情報:

  1. 我々は127.0.0.1またはlocalhostを経由して、ローカルに接続されています。
  2. Visual GCプラグインがインストールされており、接続できません。
  3. VisualVMとJRUN/CF8はどちらも同じJavaバージョン(1.6.0_31)を使用していますが、同じ場所から引っ張られることはありません。 VisualVMはインストールされたJDKを使用しますが、JURN/CF8はローカルでCF8インストールフォルダにコピーしたバイナリだけを使用します。
  4. JVMのプロパティを示す別のプラグインがインストールされていて、JVMが「接続可能」ではないと表示されます。それが何を意味するのか分かりませんが、言及したいだけです。

これについてのお手伝いをさせていただきます。私たちがそのメモリサンプルを取得するだけであれば、私たちは最近ここで悩まされているパフォーマンス上の問題の上に乗ることができると思います。前もって感謝します!

EDIT:

また、単にチェックし、私は別のユーザーでVisualVMのを立ち上げています一方、JRunは、「管理者」の下で開始されています。おそらくこれは関連性がありますか?

答えて

3

はい、異なるユーザーでVisualVMを実行していることが重要です。メモリサンプリングはAttach APIを使用します。これは、監視対象のアプリケーションとVisualVMを同じユーザーとして実行している場合にのみ機能します。これは、JVMプロパティから、アプリケーションが接続できないことが報告される理由もあります。 VisualVMを "管理者"として実行すると、自動的にColdfusion 8アプリケーションが検出され、メモリサンプラーが機能します。

+0

ありがとう、私はそれを試みます。 JRUNが始まるアカウントのパスワードを持っている人と連絡を取る必要があります...私はあなたにそれがどのように進むのか教えてくれます。 – jzimmerman2011

関連する問題