Apache Sparkレシーバー

Apache SparkレシーバーはApache Spark REST APIを通じてApache Sparkクラスターのメトリクスを取得します。

Apache Spark レシーバは、メモリ使用率、CPU 使用率、シャッフル操作などのパフォーマンスメトリクスを収集することで、Apache Spark クラスターおよびその上で実行されているアプリケーションを監視します。サポートされているパイプラインのタイプは metrics です。詳細については「パイプラインでデータを処理する」を参照してください。

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

レシーバーは、以下のエンドポイントを使用してApache Spark REST APIからメトリクスを取得します: /metrics/json/api/v1/applications/[app-id]/stages/api/v1/applications/[app-id]/executors/api/v1/applications/[app-id]/jobs endpoints

前提条件

このレシーバーはApache Sparkバージョン3.3.2以降をサポートしています。

はじめに

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

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

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

  3. Collector を再起動します。

サンプル構成

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

YAML
receivers:
  apachespark:
    collection_interval: 60s
    endpoint: http://localhost:4040
    application_names:
    - PythonStatusAPIDemo
    - PythonLR

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

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

設定オプション

以下の設定はオプションです:

  • collection_interval。デフォルトでは 60s です。このレシーバーがメトリクスを収集する間隔を設定します。

    • この値は、Golang の time.ParseDuration で読み取り可能な文字列である必要があります。詳細については、Go 公式ドキュメントの https://pkg.go.dev/time#ParseDuration を参照してください。

    • 有効な時間単位は nsusµs )、mssmh です。

    • initial_delay。デフォルトでは 1s です。このレシーバーが初めてメトリクスを収集するまでの待機時間を決定します。

  • endpoint。デフォルトでは http://localhost:4040 です。[http][://]{host}[:{port}] の形式で接続する Apache Spark のエンドポイントです。

  • application_namesします。メトリクスの収集元である Spark アプリケーション名の配列です。アプリケーション名が指定されていない場合は、指定されたエンドポイントにあるクラスター上で実行されているすべての Spark アプリケーションのメトリクスが収集されます。

設定

このレシーバに公開されている設定の全リストは、GitHub の「Apache Spark receiver config repo」から確認できます。

メトリクス

以下のメトリクス、リソース属性、および属性が使用できます。

注: SignalFx エクスポータは、デフォルトでいくつかの利用可能なメトリクスを除外します。デフォルトのメトリクスフィルタの詳細については、「List of metrics excluded by default」を参照してください。

同梱

https://raw.githubusercontent.com/splunk/collector-config-tools/main/metric-metadata/apachesparkreceiver.yaml

特定のメトリクスをアクティブまたは非アクティブにする

各メトリクスの metrics セクションの enabled フィールドを設定することで、特定のメトリクスをアクティブまたは非アクティブにできます。例:

YAML
receivers:
  samplereceiver:
    metrics:
      metric-one:
        enabled: true
      metric-two:
        enabled: false

以下は、アクティブ化されたメトリクスを持つホスト・メトリクス・レシーバーの構成例です:

YAML
receivers:
  hostmetrics:
    scrapers:
      process:
        metrics:
          process.cpu.utilization:
            enabled: true
注: 非アクティブ化されたメトリックは Splunk Observability Cloud に送信されません。
請求
  • MTS ベースのサブスクリプションの場合、すべてのメトリックがメトリックの使用にカウントされます。

  • ホストベースのプランを使用している場合、このドキュメントでアクティブ(アクティブ:はい)としてリストされているメトリックはデフォルトと見なされ、無料で含まれています。

詳細については、「Infrastructure Monitoringのサブスクリプション使用状況(ホストとメトリクスのプラン)」を参照してください。

トラブルシューティング

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.