Docs » Splunk Observability Cloud でサポートされているインテグレーション » ネットワーク用アプリケーション・レシーバーの設定 » Logstash TCP

Logstash TCP 🔗

Splunk Distribution of OpenTelemetry Collector は、Smart Agent レシーバーlogstash-tcp モニタータイプを使用して、Logstash Monitoring API を通じて Logstash デプロイの健全性とパフォーマンスを監視します。server または client モードで動作する logstash tcp 出力プラグインからイベントをフェッチし、データポイントに変換します。

このインテグレーションは、イベントをメトリクスに変換するLogstash Metrics filterプラグインと組み合わせて使用することを意図しています。このモニターが client モードのときのみ、自動検出を使用できます。

このレシーバーはLinuxとWindowsで利用できます。

メリット 🔗

インテグレーションを設定すると、これらの機能にアクセスできるようになります:

インストール 🔗

このインテグレーションを導入するには、以下の手順に従ってください:

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

  2. 設定のセクションで説明するように、モニターを設定します。

  3. Splunk Distribution of OpenTelemetry Collector を再起動します。

設定 🔗

Smart Agent モニターとCollector のインテグレーションを使用するには、以下の手順に従います:

  1. Smart Agent レシーバーを設定ファイルに含めます。

  2. レシーバーセクションおよびパイプラインセクションの両方で、Collector 構成にモニタータイプを追加します。

### 例

このインテグレーションを有効にするには、Collector構成に以下を追加します:

receivers:
  smartagent/logstash-tcp:
    type: logstash-tcp
    ... # Additional config

次に、設定ファイルの service.pipelines.metrics.receivers セクションにモニターを追加します:

service:
  pipelines:
    metrics:
      receivers: [smartagent/logstash-tcp]

例:Logstash Metricsプラグインの設定 🔗

次の例は、Logstash Metrics フィルター・プラグインから timermeter の両方のメトリクスを使用する方法を示しています:

input {
  file {
    path => "/var/log/auth.log"
    start_position => "beginning"
    tags => ["auth_log"]
  }

  # A contrived file that contains timing messages
  file {
    path => "/var/log/durations.log"
    tags => ["duration_log"]
    start_position => "beginning"
  }
}

filter {
  if "duration_log" in [tags] {
    dissect {
      mapping => {
        "message" => "Processing took %{duration} seconds"
      }
      convert_datatype => {
        "duration" => "float"
      }
    }
    if "_dissectfailure" not in [tags] { # Filter out bad events
      metrics {
        timer => { "process_time" => "%{duration}" }
        flush_interval => 10
        # This makes the timing stats pertain to only the previous 5 minutes
        # instead of since Logstash last started.
        clear_interval => 300
        add_field => {"type" => "processing"}
        add_tag => "metric"
      }
    }
  }
  # Count the number of logins using SSH from /var/log/auth.log
  if "auth_log" in [tags] and [message] =~ /sshd.*session opened/ {
    metrics {
      # This determines how often metric events will be sent to the agent, and
      # thus how often data points will be emitted.
      flush_interval => 10
      # The name of the meter will be used to construct the name of the metric
      # in Splunk Infrastructure Monitoring. For this example, a data point called `logins.count` would
      # be generated.
      meter => "logins"
      add_tag => "metric"
    }
  }
}

output {
  # This can be helpful to debug
  stdout { codec => rubydebug }

  if "metric" in [tags] {
    tcp {
      port => 8900
      # The agent will connect to Logstash
      mode => "server"
      # Needs to be "0.0.0.0" if running in a container.
      host => "127.0.0.1"
    }
  }
}

Logstashが上記のコンフィギュレーションで構成されると、logstash-tcp モニターは logins.countprocess_time.<timer_field> を収集します。

コンフィギュレーション設定 🔗

次の表に、このモニタータイプの設定オプションを示します:

オプション

必須

タイプ

説明

host

はい

string

mode: server の場合、リッスンするローカルIPアドレス。

mode: client の場合は、接続するLogstashホスト/IP。

port

いいえ

integer

mode: server の場合は、リッスンするローカルポート。

mode: client の場合は、Logstash TCP出力プラグインのポート。ポートが 0 の場合、カーネルによってランダムなリスニングポートが割り当てられます。(デフォルト: 0 )

mode

いいえ

string

server または client として機能するかどうか。Logtash

tcp 出力プラグインの対応する設定は、これと逆に設定する必要があります。(デフォルト: client )

desiredTimerFields

いいえ

list of strings

(デフォルト: [mean, max, p99, count] )

reconnectDelay

いいえ

integer

TCP接続ができないか、切断された後に

再接続するまでの待機時間。(デフォルト: 5s )

debugEvents

いいえ

bool

true の場合、Logstashから受信したイベントは、デシリアライズされた形式の

エージェントの標準出力にダンプされます。(デフォルト: false )

メトリクス 🔗

このインテグレーションで利用可能なメトリクスはありません。

トラブルシューティング 🔗

Splunk Observability Cloudをご利用のお客様で、Splunk Observability Cloudでデータを確認できない場合は、以下の方法でサポートを受けることができます。

Splunk Observability Cloudをご利用のお客様

見込み客および無料トライアルユーザー様

  • Splunk Answers のコミュニティサポートで質問し、回答を得る

  • Splunk #observability ユーザーグループの Slack チャンネルに参加して、世界中の顧客、パートナー、Splunk 社員とのコミュニケーションを図る。参加するには、Get Started with Splunk Community マニュアルの チャットグループ を参照してください。

This page was last updated on 2024年05月29日.