Apache Sparkレシーバー
Apache SparkレシーバーはApache Spark REST APIを通じてApache Sparkクラスターのメトリクスを取得します。
Apache Spark レシーバは、メモリ使用率、CPU 使用率、シャッフル操作などのパフォーマンスメトリクスを収集することで、Apache Spark クラスターおよびその上で実行されているアプリケーションを監視します。サポートされているパイプラインのタイプは metrics です。詳細については「パイプラインでデータを処理する」を参照してください。
レシーバーは、以下のエンドポイントを使用して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以降をサポートしています。
はじめに
以下の手順に従って、コンポーネントの設定とアクティベーションを行ってください:
-
Splunk Distribution of the OpenTelemetry Collector をホストまたはコンテナプラットフォームにデプロイします:
-
次のセクションで説明するようにレシーバーを設定します。
-
Collector を再起動します。
サンプル構成
Apache Sparkレシーバーを有効化するには、設定ファイルの apachespark セクションに receivers を追加します:
receivers:
apachespark:
collection_interval: 60s
endpoint: http://localhost:4040
application_names:
- PythonStatusAPIDemo
- PythonLR
設定を完了するには、設定ファイルの service セクションの metrics パイプラインに、レシーバーを含めます:
service:
pipelines:
metrics:
receivers: [apachespark]
設定オプション
以下の設定はオプションです:
-
collection_interval。デフォルトでは60sです。このレシーバーがメトリクスを収集する間隔を設定します。-
この値は、Golang の
time.ParseDurationで読み取り可能な文字列である必要があります。詳細については、Go 公式ドキュメントの https://pkg.go.dev/time#ParseDuration を参照してください。 -
有効な時間単位は
ns、us(µs)、ms、s、m、hです。
-
-
initial_delay。デフォルトでは1sです。このレシーバーが初めてメトリクスを収集するまでの待機時間を決定します。
-
-
endpoint。デフォルトではhttp://localhost:4040です。[http][://]{host}[:{port}]の形式で接続する Apache Spark のエンドポイントです。 -
application_namesします。メトリクスの収集元である Spark アプリケーション名の配列です。アプリケーション名が指定されていない場合は、指定されたエンドポイントにあるクラスター上で実行されているすべての Spark アプリケーションのメトリクスが収集されます。
設定
このレシーバに公開されている設定の全リストは、GitHub の「Apache Spark receiver config repo」から確認できます。
メトリクス
以下のメトリクス、リソース属性、および属性が使用できます。
同梱
https://raw.githubusercontent.com/splunk/collector-config-tools/main/metric-metadata/apachesparkreceiver.yaml
特定のメトリクスをアクティブまたは非アクティブにする
各メトリクスの metrics セクションの enabled フィールドを設定することで、特定のメトリクスをアクティブまたは非アクティブにできます。例:
receivers:
samplereceiver:
metrics:
metric-one:
enabled: true
metric-two:
enabled: false
以下は、アクティブ化されたメトリクスを持つホスト・メトリクス・レシーバーの構成例です:
receivers:
hostmetrics:
scrapers:
process:
metrics:
process.cpu.utilization:
enabled: true
-
MTS ベースのサブスクリプションの場合、すべてのメトリックがメトリックの使用にカウントされます。
-
ホストベースのプランを使用している場合、このドキュメントでアクティブ(アクティブ:はい)としてリストされているメトリックはデフォルトと見なされ、無料で含まれています。
詳細については、「Infrastructure Monitoringのサブスクリプション使用状況(ホストとメトリクスのプラン)」を参照してください。
トラブルシューティング
__ ___ ___ _ ______ _____________ _____ ________ ___ ___ ___ ____ __ ___ ____ ____ __ ______ _____________ ______ ___ ___ ___ ____ __ ___ _________ _____
_________ __ ______ _____________ _____ _________
-
______ _ ____ __ ___ ______ _______ _______
-
_______ ______ ________
_________ __ ___________ _________ ___ ____ _____ _____
-
___ _ ________ ___ ___ _______ _______ _________ _______ __ ______ ________
-
____ ___ ______ ______________ ____ _____ _____ _______ __ ___________ ____ __________ _________ ___ ______ _________ __________ __ _____ ___ ____ _______