JMXレシーバー

JMXレシーバーは、MBeanサーバーからのメトリクスをレポートします。

JMX レシーバーは、MBean サーバーからメトリクスをレポートするために、OpenTelemetry JMX Metric Gatherer と連携して動作します。サポートされているパイプラインのタイプは metrics です。詳細については「パイプラインでデータを処理する」を参照してください。

JMX レシーバーを使用して、target_system 設定を使用している Cassandra などのサービスを監視できます。詳細については 、「詳細設定」 および 「設定」を参照してください。

注: すぐに使えるダッシュボードとナビゲーターは、JMX レシーバーではまだサポートされていません。

前提条件

レシーバーは、指定された JMX 接続情報とターゲットの組み込み OTel-helper Groovy スクリプトで設定された JMX Metric Gatherer を実行する子 JRE プロセスを起動します。その後、暗黙的に作成された OTLP レシーバーにメトリクスを報告します。

JMX レシーバーを使用するには、次の前提条件を満たします。

  • JMX Metric Gatherer JAR の最新リリースをダウンロードし、そのパスでレシーバーを設定します。

  • システムで JRE が使用できることを確認します。

はじめに

以下の手順に従って、コンポーネントの設定とアクティベーションを行ってください:

  1. Splunk Distribution of the OpenTelemetry Collector をホストまたはコンテナプラットフォームにデプロイします:

  2. 次のセクションで説明するように、JMX レシーバーを設定します。

  3. Collector を再起動します。

サンプル構成

JMXレシーバーを有効にするには、設定ファイルの receiversセクションに jmx を追加します:

YAML
receivers:
  jmx:

設定を完了するには、設定ファイルの service セクションの metrics パイプラインに、レシーバーを含めます:

YAML
service:
  pipelines:
    metrics:
      receivers: [jmx]

詳細については、「設定」を参照してください。

設定例

この例では、レシーバーの設定詳細を提供します:

YAML
receivers:
  jmx:
    jar_path: /opt/opentelemetry-java-contrib-jmx-metrics.jar
    endpoint: my_jmx_host:12345
    target_system: jvm
    collection_interval: 10s
    initial_delay: 1s
    # optional: the same as specifying OTLP receiver endpoint.
    otlp:
      endpoint: mycollectorotlpreceiver:4317
    username: my_jmx_username
    # determined by the environment variable value
    password: ${env:MY_JMX_PASSWORD}
    resource_attributes: my.attr=my.value,my.other.attr=my.other.value
    log_level: info
    additional_jars:
      - /path/to/other.jar

詳細な設定

レシーバーでは、以下の詳細設定を使用できます:

  • jar_pathします。JMX Metric Gatherer uber JAR を実行するためのパス。GitHub からダウンロードできる、バージョン 1.9 以上の jar バージョンを使用します。デフォルトでは /opt/opentelemetry-java-contrib-jmx-metrics.jar です。

    • リリースされていないバージョンが必要な場合は、ldflags オプションを使用して、コレクターのビルド時にカスタムバージョンの jar の sha256 ハッシュを指定してカスタムバージョンを指定します。
      CODE
      go build -ldflags "-X github.com/open-telemetry/opentelemetry-collector-contrib/receiver/jmxreceiver.MetricsGathererHash=<sha256hash>" ...
  • endpointします。必須。Metric Gatherer の JMX クライアントが使用するサービス URL を構築するために使用される JMX サービス URL またはホストとポート。service:jmx:<protocol>:<sap> または host:port のフォーマットを使用します。

    • host:port フォーマットを使用する場合は、サービスURL service:jmx:rmi:///jndi/rmi://<host>:<port>/jmxrmi を作成します。

    • service:jmx:<protocol>:<sap> 形式を使用または強制する場合は、otel.jmx.service.url プロパティに対応します。

  • target_systemします。実行する組み込みターゲットシステム(またはシステム)メトリクス ギャザラー スクリプト。

    • 可能な値: "activemq""cassandra""hbase""hadoop""jetty""jvm""kafka""kafka-consumer""kafka-producer""solr""tomcat"、または "wildfly"

    • 同時に複数のターゲットシステムを指定することができます: "target_system": "activemq, kafka,kafka-consumer"

    • MetricsGathererHash ビルド時間設定を使用して設定されたカスタムの JMX metrics gatherer jar のために追加のターゲットシステムをサポートする必要がある場合は、別のビルド時間フラグを使用してそれらを追加します。これは otel.jmx.target.system プロパティに対応します。

DEFAULT
go build -ldflags "-X github.com/open-telemetry/opentelemetry-collector-contrib/receiver/jmxreceiver.MetricsGathererHash=<sha256hash>
      -X github.com/open-telemetry/opentelemetry-collector-contrib/receiver/jmxreceiver.AdditionalTargetSystems=newtarget,othernewtarget" ...

設定

次の表に、JMX レシーバーの設定オプションを示します:

同梱

https://raw.githubusercontent.com/splunk/collector-config-tools/main/cfg-metadata/receiver/jmx.yaml

トラブルシューティング

If you are a Splunk Observability Cloud customer and are not able to see your data in Splunk Observability Cloud, you can get help in the following ways.

Available to Splunk Observability Cloud customers

Available to prospective customers and free trial users

  • Ask a question and get answers through community support at Splunk Answers.

  • Join the Splunk community #observability Slack channel to communicate with customers, partners, and Splunk employees worldwide.