すべてのプロダクト
Search
ドキュメントセンター

Elasticsearch:logstash-output-datahub プラグインの使用

最終更新日:Jan 11, 2025

logstash-output-datahub プラグインを使用すると、DataHub にデータを転送できます。このトピックでは、logstash-output-datahub プラグインの使用方法について説明します。

前提条件

  • logstash-output-datahub プラグインがインストールされていること。

    詳細については、プラグインのインストールと削除をご参照ください。

  • DataHub がアクティブ化され、プロジェクトが作成され、プロジェクトのトピックが作成されていること。

    詳細については、DataHub を使い始めるをご参照ください。

  • データを読み取るデータソースが準備されていること。

    使用可能なデータソースは、Logstash でサポートされている入力プラグインによって決定されます。詳細については、入力プラグインをご参照ください。この例では、Alibaba Cloud Elasticsearch クラスタを使用します。

logstash-output-datahub の使用

構成ファイルを使用してパイプラインを管理するに記載されている手順に従って、パイプラインを作成します。パイプラインを作成する際は、「パラメータ」セクションの表に記載されている説明に基づいて、パイプラインパラメータを構成します。パラメータを構成した後、設定を保存してパイプラインをデプロイします。これにより、Logstash をトリガーしてデータソースからデータを読み取り、DataHub に転送できます。

次のコードは、パイプライン構成の例を示しています。パラメータの詳細については、パラメータをご参照ください。

input {
    elasticsearch {
      hosts => ["http://es-cn-mp91cbxsm000c****.elasticsearch.aliyuncs.com:9200"]
      user => "elastic"
      index => "test"
      password => "your_password"
      docinfo => true
  }
}
filter{
    
}
output {
    datahub {
        access_id => "Your accessId" // アクセスID
        access_key => "Your accessKey" // アクセスキー
        endpoint => "Endpoint" // エンドポイント
        project_name => "project" // プロジェクト名
        topic_name => "topic" // トピック名
        #shard_id => "0" // シャードID
        #shard_keys => ["thread_id"] // シャードキー
        dirty_data_continue => true // 不正なデータの処理を継続するかどうか
        dirty_data_file => "/ssd/1/<Logstash cluster ID>/logstash/data/File name" // 不正なデータファイルの名前
        dirty_data_file_max_size => 1000 // 不正なデータファイルの最大サイズ
    }
}
重要 デフォルトでは、Alibaba Cloud Logstash は同じ仮想プライベートクラウド (VPC) を介したデータ転送のみをサポートします。ソースデータがインターネット上にある場合は、Logstash クラスタがインターネットにアクセスできるように、ネットワークアドレス変換 (NAT) ゲートウェイを構成します。詳細については、インターネット経由のデータ転送のための NAT ゲートウェイの構成をご参照ください。

パラメータ

次の表は、logstash-output-datahub でサポートされているパラメータを示しています。
パラメータタイプ必須説明
endpointstringはいDataHub にアクセスするために使用するエンドポイント。詳細については、エンドポイントをご参照ください。
access_idstringはいAlibaba Cloud アカウントの AccessKey ID。
access_keystringはいAlibaba Cloud アカウントの AccessKey シークレット。
project_namestringはいDataHub プロジェクトの名前。
topic_namestringはいDataHub トピックの名前。
retry_timesnumberいいえ許可される再試行回数。値 -1 は無制限を示します。値 0 は再試行が許可されないことを示します。0 より大きい値は、指定された回数の再試行が許可されることを示します。デフォルト値:-1。
retry_intervalnumberいいえ再試行間隔。単位:秒。デフォルト値:5。
skip_after_retrybooleanいいえDataHub の例外によって発生した再試行回数が retry_times の値を超えた場合に、現在のバッチのデータのアップロードをスキップするかどうかを指定します。デフォルト値:false。
approximate_request_bytesnumberいいえ各リクエストで送信できるおおよそのバイト数。デフォルト値は 2048576 で、2 MB を示します。このパラメータは、リクエスト本文が大きすぎるためにリクエストが拒否されるのを防ぐために使用されます。
shard_keysarrayいいえフィールドの名前。プラグインは、フィールドの値を使用して、特定のシャードにデータを書き込むためのハッシュを計算します。
説明 shard_keysshard_ids が指定されていない場合、プラグインはシャードをポーリングして、プラグインがデータを書き込むシャードを決定します。
shard_idsarrayいいえプラグインがデータを書き込むシャードの ID。
説明 shard_keysshard_ids が指定されていない場合、プラグインはシャードをポーリングして、プラグインがデータを書き込むシャードを決定します。
dirty_data_continuestringいいえデータ処理中に不正なデータをスキップするかどうかを指定します。デフォルト値:false。値を true に設定する場合は、dirty_data_file を指定する必要があります。値 true は、データ処理中に不正なデータがスキップされることを示します。
dirty_data_filestringいいえ不正なデータファイルの名前。dirty_data_continue パラメータを true に設定する場合は、このパラメータを構成する必要があります。
説明 データ処理中に、不正なデータファイルはパート 1 とパート 2 に分割されます。生の不正なデータはパート 1 に格納されます。更新された不正なデータはパート 2 に格納されます。
dirty_data_file_max_sizenumberいいえ不正なデータファイルの最大サイズ。単位:KB。
enable_pbbooleanいいえデータ転送に Protocol Buffers (Protobuf) を有効にするかどうかを指定します。デフォルト値:true。Protobuf がデータ転送でサポートされていない場合は、値を false に設定します。