問題タブ [mbeans]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - リモート JMX 接続と通知の問題
UsageThreshold に関連する Java API ドキュメント (http://download.oracle.com/javase/1.5.0/docs/api/java/lang/management/MemoryPoolMXBean.html#Notification) の 1 つの例に従おうとしています。メモリ プール Bean のプロパティと通知。私の意図は、プールがしきい値を超えるたびに何かをすることです. サンプルコードは次のとおりです。
コードを実行して JVM に接続すると、次のように表示されます。
なんらかの理由で (まだわかりませんが)、コードが JVM への接続を再開しようとしています。なぜこれが起こるのか、またはそれを防ぐ方法はありますか? 私は何か間違ったことをしていますか?
ありがとう
java - 同じVMで実行されているJMXMBeanServerにアクセスするにはどうすればよいですか?
一定の間隔で操作を実行する単純なJavaライブラリの場合、MXBeansを使用してJMX管理を実装し、期待どおりに機能します。JConsoleでステータスのクエリとパラメータの設定、操作の一時停止/再開などを行うことができます。
次に、ライブラリの操作を表示および制御するためのWebアプリケーションを作成します。
WebアプリケーションでもsamyJMXAPIを使用するのが良いかどうかはわかりません。そのため、プラットフォームMBeanサーバーを使用して同じVMに登録されているMXBeanにアクセスする方法が必要です。
MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();
MBeanServerにqueryMBeansメソッドがあることに気づきました。このメソッドを使用して、登録済みのJMX API MXBeanにアクセスする必要がありますか?JMXConnectorFactoryを使用する別のパスがあります。これには、クライアントがリモートJMXサーバーにアクセスできるように、プロトコル、ホスト、およびポート情報が必要です。
java - 新しく登録されたMBeanの検出
OSGiコンテナで実行されているJava1.6のプラットフォームMBeansサーバーを使用しています。
主に統計カウンターとイベントにMBeanを使用します。それらの実装は1つのバンドルに含まれていますが、他のいくつかのバンドルでインスタンス化されています。すべてのMBeanは、プラットフォームMBeanサーバーに自己登録します。
問題は、JMX経由で接続してMBeanを照会すると、現在登録されているものだけが取得され、インスタンス化されるまで登録されないことです(静的クラスは最初のアクセスまで存在しないため、またはバンドルがまだ開始されていないか、最初に使用するまで存在しないロジックの奥深くにカウンターがあります)
MBeansサーバーでイベントを「登録」するためにサブスクライブする方法が必要です。または、サーバーに新しいMBeanが追加された時期を判断する他の方法。削除されたMBeanを検出することは追加のボーナスですが、必須ではありません。
私が得た唯一の解決策は、基本的に5秒ごとにサーバーをポーリングし、その結果を保存されたMBeanのリストと比較するスレッドです。これは非常に醜いです。
java - カスタム MBean HTML ページ
MBean の管理に使用されるエージェント ビュー、エージェント管理、および MBean ビューのページをカスタマイズしようとしています。以前にこれを行ったことがあるか、またはこれを容易にするツールを知っているかどうかを知りたいです。
これまで、HTML 生成クラス (HTMLAdminPage、HTMLObjectPage、および HTMLPage) を拡張するだけを見てきましたが、これらは非公開/保護されていて拡張できないため、これは困難であることがわかりました。
java - jmxを介して実行時にThreadPoolTaskExecutorを変更する方法
JConsoleを使用してMBeanプロパティを変更できません。次のコマンドで呼び出されるThreadingBeanがあります。
ThreadContent.xmlには、すべてのデフォルトのプロパティ値が含まれています。
SimpleJmxAgentは次のようになります。
ThreadPoolManagerは、次のようなThreadプロパティのgetterメソッドとsetterメソッドにアクセスできるようにするために、ThreadPoolTaskExecutorから継承しています。
public void setCorePoolSize(int corePoolSize)
編集:
私は以下の使用を実装しました:
に包まれて:
これで、操作が[MBeans]タブに表示されます。ただし、属性は使用されているものとは異なる値として表示されます。ThreadContext.xmlに設定しました
ただし、表示属性がデフォルト値である1に設定されている場合。操作を介してJconsoleを介してこれを変更できchangeCorePoolSize
ますが、表示される値を変更するのは見た目の効果だけですが、5つのTaskExecutor
スレッドがまだ進行中の進行中のプロセスは変更しません。
私がしていることに何かが欠けていますか?ThreadContext.xmlを介して設定しているプロパティと、Jconsoleの属性に表示されているプロパティとの間で切断が発生する原因は何ですか?
java - JDK1.6 の ManagementFactory からのマネージド Mbean - NotCompliantMBeanException:
ManagementFactory を使用して、JDK1.5 および JBOSS 4.X で ManagedMbeans を取得していました。同じコードを JDK 1.6 に移行したいと考えました。Mbean 部分が例外をスローして壊れる
原因: javax.management.NotCompliantMBeanException: クラスが管理インターフェースを公開していません: java.lang.Object 原因: java.lang.Exception: Unable to register platform (JVM) MBeans with JBoss MBeanServer
java - MBean 用の XSD ファイルはありますか
私は JMX プロジェクトに取り組んでおり、プロジェクト内のすべての MBean の MBean の属性と操作を公開するために、API を作成したいと考えていました。このために、JAXB または XMLBeans を使用してそれらの Java クラスを生成できるように、プロバイダーからの適切な名前空間を持つ MBean xsd ファイルが必要でした。Google を試しましたが、適切な名前空間のない DTD ファイルまたは非標準の XSD ファイルしか見つかりませんでした。
使用できる標準の XSD はありますか? ありがとう。
java - Java イベント処理のヘルプ (通知とイベント オブジェクト)
私は Android アプリと Blackberry アプリ (同じアプリで異なるプラットフォーム) を構築しています。イベントを処理する抽象クラスを作成しています。たとえば、Android で「保存」ボタンを押すと、通知/イベントが投稿されます。抽象クラスはそのイベントを受け取ります。Blackberry で「保存」ボタンを押すと、同じことが行われます。
これを達成するための最良の方法は何ですか?MBeans とその通知クラスだけでなく、EventObject も調べましたが、それらは非常に複雑に見えます。Objective-C では、通知用のクラス インスタンスを Objective-C の notificationcenter に登録するだけです。次に、通知をトリガーするクラスで、トリガー時に「postNotification」の行に沿って何かを行います。Javaで簡単なことはありますか?また、これらの通知でオブジェクトを送信する必要があります。
ああ、実際には MBeans クラスを使用できないと思います。Blackberry Java バージョンの一部ではありません。
ありがとう!
java - Sun JConsole を使用した Websphere 7 MBean へのアクセス
Sun の JConsole を使用して Websphere 7 MBean にアクセスするにはどうすればよいですか?
java - JBoss AS7JMXコンソール
今日はJBossAS7をチェックするのに少し時間を費やしました。これまでに見たものに感銘を受けましたが、古き良きJMXコンソールがもう存在しないことに気づきました。
- なぜそれが省略されたのか誰かが知っていますか?
- JConsole、MC4Jなどを介して接続できることを理解していますが、デプロイされたMBeanへのWebベースのアクセスを提供する代替手段はありますか?