Splunk HEC エクスポーター 🔗
Splunk HTTP Event Collector (HEC) エクスポーターにより、OpenTelemetry Collector はトレース、ログ、メトリクスを Splunk HEC エンドポイントに送信できます。サポートされているパイプラインタイプは traces
、metrics
、logs
です。詳細は パイプラインでデータを処理する を参照してください。
Splunk HEC エクスポーターの主な目的は、ログとメトリクスを Splunk Cloud Platform または Splunk Enterprise に送信することです。Log Observer Connect は現在、Splunk Cloud Platform と Splunk Enterprise のインデックスを Splunk Observability Cloud に取り込むために使用されています。詳細は Splunk Log Observer Connect を参照してください。
エクスポーターは、AlwaysOn Profilingデータも Splunk Observability Cloud に送信します。詳細については、Splunk APMのAlwaysOn Profilingにデータを取り込む を参照してください。
HECレシーバーについては、Splunk HEC レシーバー を参照してください。
はじめに 🔗
注釈
このコンポーネントは、logs
パイプラインでホスト監視 (エージェント) モードでデプロイする場合、Splunk Distribution of the OpenTelemetry Collector のデフォルト設定に含まれます。詳細は Collector のデプロイモード を参照してください。
デフォルト設定の詳細については、Helmで Collector for Kubernetes を設定する、Collector for Linux のデフォルト設定、または Collector for Windows のデフォルト設定 を参照してください。この文書で説明されているように、いつでも設定をカスタマイズすることができます。
Splunk Distribution of OpenTelemetry Collector のバージョン 0.81 以降では、デフォルトの構成に、標準のログエクスポーターとは別に AlwaysOn Profiling データ用のエクスポーターが含まれています。ログまたはプロファイリングデータをオフにする を参照してください。
以下の手順に従って、コンポーネントの設定とアクティベーションを行ってください:
Splunk Distribution of OpenTelemetry Collector をホストまたはコンテナプラットフォームにデプロイします:
このドキュメントで説明されているように、エクスポーターを設定してください。
Collector を再起動します。
サンプル構成 🔗
次の例は、Collector 設定ファイルでログパイプライン用に設定された Splunk HEC exporter インスタンスを示しています:
exporters:
# ...
splunk_hec:
token: "<hec-token>"
endpoint: "<hec-endpoint>"
# Source. See https://docs.splunk.com/Splexicon:Source
source: "otel"
# Source type. See https://docs.splunk.com/Splexicon:Sourcetype
sourcetype: "otel"
# ...
次に、設定ファイルの services
セクションにエクスポーターを追加します:
service:
# ...
pipelines:
logs:
receivers: [fluentforward, otlp]
processors:
- memory_limiter
- batch
- resourcedetection
exporters: [splunk_hec]
Splunk HEC トークンとエンドポイント 🔗
Splunk HEC エクスポーターには Splunk HEC トークンとエンドポイントが必要です。HEC トークンの取得と HEC エンドポイントの選択はターゲットによって異なります。次の表は、各バックエンドのエンドポイントと手順を示しています。ログを Splunk Cloud Platform または Splunk Enterprise に送信する場合は、source
および sourcetype
フィールドオプションを使用してください。
バックエンド |
エンドポイント |
トークン |
---|---|---|
Splunk Cloud Platform |
「 Splunk Cloud Platform の HTTP Event Collector にデータを送信する 」を参照してください。 |
「 Splunk Cloud Platform で HTTP Event Collector (HEC) トークンを管理する 」を参照してください。 |
Splunk Enterprise |
「 Splunk Enterprise の HTTP Event Collector にデータを送信する 」を参照してください。 |
「 Splunk Enterprise で Event Collector トークンを作成する 」を参照してください。 |
Splunk Observability Cloud |
|
Splunk Observability Cloudを使用した組織のアクセストークンの作成および管理 を参照してください。 |
Splunk レルムを見つけるには、レルムに関する注意事項 を参照してください。
注釈
Splunk HEC データをプロキシ経由で送信するには、プロキシ設定を環境変数として構成します。詳細は Collectorのプロキシ設定を構成する を参照してください。
ユースケース 🔗
ログを Splunk Cloud Platform または Splunk Enterprise に送信する 🔗
ログ収集に Collector を使用していて、Splunk Cloud Platform または Splunk Enterprise にデータを送信する必要がある場合は、splunk_hec
エクスポーターを設定して、Splunk endpoint
と token
を使用するようにしてください。例:
exporters:
splunk_hec:
# Splunk HTTP Event Collector token.
token: "00000000-0000-0000-0000-0000000000000"
# URL to a Splunk instance to send data to.
endpoint: "https://splunk:8088/services/collector"
# Optional Splunk source: https://docs.splunk.com/Splexicon:Source
source: "otel"
# Optional Splunk source type: https://docs.splunk.com/Splexicon:Sourcetype
sourcetype: "otel"
# Splunk index, optional name of the Splunk index targeted.
index: "metrics"
# Whether to deactivate gzip compression over HTTP. Defaults to false.
disable_compression: false
# HTTP timeout when sending data. Defaults to 10s.
timeout: 10s
# Whether to skip checking the certificate of the HEC endpoint when sending data over HTTPS. Defaults to false.
tls:
insecure_skip_verify: true
Splunk Cloud Platform または Enterprise と Splunk Observability Cloud の間でログデータを分割して、ログを Splunk に送信しながら AlwaysOn Profiling データを保持することができます。詳細については、OpenTelemetry Collectorの設定を確認する を参照してください。
ログパイプラインを分割するには、Collector設定ファイルの receiver
および exporters
セクションに2つの別々の splunk_hec
エントリーを設定します。次に、両方を logs
パイプラインに追加します。例:
receivers:
# Default OTLP receiver--used by Splunk platform logs
otlp:
protocols:
grpc:
endpoint: 0.0.0.0:4317
http:
endpoint: 0.0.0.0:4318
# OTLP receiver for AlwaysOn Profiling data
otlp/profiling:
protocols:
grpc:
# Make sure to configure your agents
# to use the custom port for logs when
# setting SPLUNK_PROFILER_LOGS_ENDPOINT
endpoint: 0.0.0.0:4319
exporters:
# Export logs to Splunk platform
splunk_hec/platform:
token: "<splunk_token>"
endpoint: "https://splunk:8088/services/collector"
source: "otel"
sourcetype: "otel"
index: "main"
disable_compression: false
timeout: 10s
tls:
insecure_skip_verify: true
# Export profiling data to Splunk Observability Cloud
splunk_hec/profiling:
token: "<splunk_o11y_token>"
endpoint: "https://ingest.<realm>.signalfx.com/v1/log"
source: "otel"
sourcetype: "otel"
log_data_enabled: false
processors:
batch:
memory_limiter:
check_interval: 2s
limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB}
# Other settings
service:
pipelines:
# Traces and metrics pipelines
# Logs pipeline for Splunk platform
logs/platform:
receivers: [fluentforward, otlp]
processors:
- memory_limiter
- batch
exporters: [splunk_hec/platform]
# Logs pipeline for AlwaysOn Profiling
logs/profiling:
receivers: [otlp/profiling]
processors:
- memory_limiter
- batch
exporters: [splunk_hec/profiling]
ログまたはプロファイリングデータをオフにする 🔗
注釈
Splunk Distribution of OpenTelemetry Collector のバージョン 0.81 から、ログとプロファイリングパイプラインが分割されるようになりました。その場合、必要に応じて削除したりコメントアウトしたりできます。
特定のホストまたはコンテナの AlwaysOn Profiling データが不要な場合は、Collector 構成ファイルの splunk_hec
exporter 設定で profiling_data_enabled
オプションを false
に設定します。例:
splunk_hec:
token: "${SPLUNK_HEC_TOKEN}"
endpoint: "${SPLUNK_HEC_URL}"
source: "otel"
sourcetype: "otel"
profiling_data_enabled: false
APM 用の AlwaysOn Profilingデータを保持しながら Splunk Observability Cloud 用のログ収集をオフにするには、log_data_enabled
オプションを false
に設定します。詳細は Collector のログデータを除外する を参照してください。
splunk_hec/profiling:
token: "${SPLUNK_HEC_TOKEN}"
endpoint: "${SPLUNK_HEC_URL}"
source: "otel"
sourcetype: "otel"
log_data_enabled: false
If you need to turn off log data export to Splunk Observability Cloud, for example because you’re using Log Observer Connect, set log_data_enabled
to false
in the splunk_hec
exporter of your Collector configuration file:
splunk_hec:
token: "${SPLUNK_HEC_TOKEN}"
endpoint: "${SPLUNK_HEC_URL}"
source: "otel"
sourcetype: "otel"
log_data_enabled: false
注釈
log_data_enabled
の設定は、OpenTelemetry Collector バージョン 0.49.0 以降の Splunk ディストリビューションで利用可能です。
EC2でカスタム構成を使用するには、Deploy the Collector using a custom configuration を参照してください。Fargateでカスタム構成を使用するには、カスタム設定を使用する を参照してください。
Helmチャートを使用してKubernetesにCollectorをデプロイしている場合は、カスタムチャートまたはvalues.yamlファイルの splunkObservability
セクションで以下の設定を変更してください:
splunkObservability:
# Other settings
logsEnabled: false
メトリクスを Splunk Cloud Platform または Splunk Enterprise に送信する 🔗
Collector を使用して、Splunk Cloud Platform または Splunk Enterprise にメトリクスを送信できます。
例えば、以下のような設定でPrometheusのメトリクスをスクレイピングしている場合:
pipelines:
metrics:
receivers: [prometheus]
processors: [batch]
exporters: [splunk_hec/metrics]
receivers:
prometheus:
config:
scrape_configs:
- job_name: 'otel-collector'
scrape_interval: 5s
static_configs:
- targets: ['<container_name>:<container_port>']
次の例に示すように、splunk_hec
エクスポーターを設定する必要があります:
exporters:
splunk_hec/metrics:
# Splunk HTTP Event Collector token.
token: "00000000-0000-0000-0000-0000000000000"
# URL to a Splunk instance to send data to.
endpoint: "https://splunk:8088/services/collector"
# Optional Splunk source: https://docs.splunk.com/Splexicon:Source
source: "app"
# Optional Splunk source type: https://docs.splunk.com/Splexicon:Sourcetype
sourcetype: "jvm_metrics"
# Splunk index, optional name of the Splunk index targeted.
index: "metrics"
Splunk HEC でメトリクスを取り込むには、インデックスをメトリクスインデックスとして宣言する必要があります。メトリクスインデックス技術の詳細については、Splunk docs の Get started with metrics を参照してください。
設定 🔗
次の表にSplunk HECエクスポーターの設定オプションを示す。max_idle_conns
や max_idle_conns_per_host
などのHTTP設定については、GitHubの HTTP config options for the Collector を参照してください。
トラブルシューティング 🔗
Splunk Observability Cloudをご利用のお客様で、Splunk Observability Cloudでデータを確認できない場合は、以下の方法でサポートを受けることができます。
Splunk Observability Cloudをご利用のお客様
Submit a case in the Splunk Support Portal .
Contact Splunk Support .
見込み客および無料トライアルユーザー様
Splunk Answers のコミュニティサポートで質問し、回答を得る
Splunk #observability ユーザーグループの Slack チャンネルに参加して、世界中の顧客、パートナー、Splunk 社員とのコミュニケーションを図る。参加するには、Get Started with Splunk Community マニュアルの チャットグループ を参照してください。