GenericJMX 🔗
Splunk Distribution of OpenTelemetry Collectorは、Smart Agentレシーバーと genericjmx
モニターを使用し、管理情報を提供しクエリする汎用フレームワークであるJava Management Extensions (JMX) 上のメトリクスを公開します。このインターフェイスは、Java仮想マシン(JVM)によって使用され、使用されるメモリとスレッドに関する情報を提供します。より柔軟な代替手段としては、JMXモニター を使用します。
注釈
ネイティブのOpenTelemetryコンポーネントを使用してOpenTelemetry CollectorでJMXを監視するには、JMXレシーバー を参照してください。
このインテグレーションはKubernetesとLinuxでのみ利用可能です。
メリット 🔗
インテグレーションを設定すると、これらの機能にアクセスできるようになります:
メトリクスを表示します。独自のカスタム・ダッシュボードを作成することができ、ほとんどのモニターは組み込みのダッシュボードも提供しています。ダッシュボードについては、Splunk Observability Cloudでダッシュボードを表示する を参照してください。
Infrastructure Monitoring に表示される環境内の物理サーバー、仮想マシン、AWS インスタンス、およびその他のリソースのデータ駆動型の視覚化を表示します。ナビゲーターについては、Splunk Infrastructure Monitoring でナビゲーターを使用する を参照してください。
Metric Finder にアクセスして、モニターから送信されたメトリクスを検索します。詳細については、メトリクス・ファインダーとメタデータ・カタログを検索する を参照してください。
インストール 🔗
このインテグレーションを導入するには、以下の手順に従ってください:
Splunk Distribution of OpenTelemetry Collector をホストまたはコンテナプラットフォームにデプロイします:
設定のセクションで説明するように、モニターを設定します。
Splunk Distribution of OpenTelemetry Collector を再起動します。
設定 🔗
Smart Agent モニターとCollector のインテグレーションを使用するには、以下の手順に従います:
Smart Agent レシーバーを設定ファイルに含めます。
レシーバーセクションおよびパイプラインセクションの両方で、Collector 構成にモニタータイプを追加します。
Collector でSmart Agent モニターを使用する の方法を参照してください。
Smart Agent レシーバー の設定方法を参照してください。
一般的な設定オプションのリストについては、モニターの共通設定 を参照してください。
Collectorの詳細は、はじめに:Collectorを理解して使用する を参照してください。
例 🔗
このインテグレーションを有効にするには、Collector構成に以下を追加します:
receivers:
smartagent/genericjmx:
type: collectd/genericjmx
... # Additional config
次に、設定ファイルの service.pipelines.metrics.receivers
セクションにモニターを追加します:
service:
pipelines:
metrics:
receivers: [smartagent/genericjmx]
高度な設定例 🔗
次の例を参照してください:
receivers:
smartagent/genericjmx:
type: collectd/genericjmx
host: my-java-app
port: 7099
mBeanDefinitions:
threading:
objectName: java.lang:type=Threading
values:
- type: gauge
table: false
instancePrefix: jvm.threads.count
attribute: ThreadCount
コンフィギュレーション設定 🔗
次の表に、このモニターの設定オプションを示します:
オプション |
必須 |
タイプ |
説明 |
---|---|---|---|
|
はい |
|
|
|
はい |
|
|
|
いいえ |
|
|
|
いいえ |
|
|
|
いいえ |
|
|
|
いいえ |
|
|
|
いいえ |
|
サーバーを認証するユーザー名 |
|
いいえ |
|
サーバーを認証するためのユーザーパスワード |
|
いいえ |
|
|
|
いいえ |
|
|
|
いいえ |
|
|
|
いいえ |
|
|
ネストされた mBeanDefinitions
コンフィギュレーション・オブジェクトは以下のフィールドを持ちます:
オプション |
必須 |
タイプ |
説明 |
---|---|---|---|
|
いいえ |
|
|
|
いいえ |
|
生成されたプラグイン・インスタンスにプレフィックスをつけます。 |
|
いいえ |
|
|
|
いいえ |
|
|
|
いいえ |
|
ネストされた values
コンフィギュレーション・オブジェクトは以下のフィールドを持ちます:
オプション |
必須 |
タイプ |
説明 |
---|---|---|---|
|
いいえ |
|
|
|
いいえ |
|
|
|
いいえ |
|
|
|
いいえ |
|
|
|
いいえ |
|
|
|
いいえ |
|
|
メトリクス 🔗
備考 🔗
Splunk Observability Cloudで利用可能なメトリクスタイプの詳細は、メトリクスタイプ を参照してください。
ホストベースのサブスクリプションプランでは、デフォルトのメトリクスは、ホスト、コンテナ、バンドルメトリクスなど、Splunk Observability Cloudのホストベースのサブスクリプションに含まれるメトリクスです。カスタムメトリクスはデフォルトでは提供されず、料金が発生する場合があります。詳細については、メトリクスカテゴリ を参照してください。
MTSベースのサブスクリプションプランでは、すべてのメトリクスがカスタムです。
メトリクスを追加するには、その他のメトリクスの追加 で
extraMetrics
の設定方法を参照してください。
トラブルシューティング 🔗
Splunk Observability Cloudをご利用のお客様で、Splunk Observability Cloudでデータを確認できない場合は、以下の方法でサポートを受けることができます。
Splunk Observability Cloudをご利用のお客様
Splunk サポートポータル でケースを送信する
Splunkサポート に連絡する
見込み客および無料トライアルユーザー様
Splunk Answers のコミュニティサポートで質問し、回答を得る
Join the Splunk #observability user group Slack channel to communicate with customers, partners, and Splunk employees worldwide. To join, see Chat groups in the Get Started with Splunk Community manual.
公開されているポート 🔗
以下の Java プロパティは、インバウンド接続に JMX ポートを公開する方法を示しています。詳細については、Javaドキュメントの「Monitoring and Management Using JMX Technology」を参照してください。
java \
-Dcom.sun.management.jmxremote.port=5000 \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false \
-Dcom.sun.management.jmxremote.rmi.port=5000 \
...
これは、エージェントがJavaアプリホスト上のポート5000へのアクセスを許可されている限り動作します。これは認証や暗号化をオンにしないことに注意してください。
以下のエラーメッセージは、ホスト設定が172.17.0.3、ポート設定が5000に設定されていることを前提としています。ホスト設定とポート設定は異なる可能性があります。以下のセクションでは、受信する可能性のあるエラーとその意味を示します:
接続拒否 🔗
java \
-Dcom.sun.management.jmxremote.port=5000 \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false \
-Dcom.sun.management.jmxremote.rmi.port=5000 \
...
このエラーは、JMX 接続ポートが指定されたホスト上で開いていないことを示しています。netstat/ss または他のツールを使用して、このポートが設定されたホスト上で実際に開いており、適切なアドレスでリッスンしていることを確認してください。エージェントがリモートサーバーで実行されている場合、JMX は localhost だけでリッスンしていない可能性があります。
RMI接続の問題 🔗
Creating MBean server connection failed: java.rmi.ConnectException: Connection refused to host: 172.17.0.3; nested exception is:
java.net.ConnectException: Connection timed out (Connection timed out)
これは、JMX 接続ポートには正常に到達したが、接続先の RMI ポートがファイアウォールによってブロックされていることを示しています。Java アプリの com.sun.management.jmxremote.rmi.port
プロパティが、JMX 接続ポートと同じポートに設定されていることを確認してください。Connection reset(接続リセット)または Connection refused(接続拒否)というエラー・メッセージには、同様の原因を示す他のバリエーションがある可能性があります。