Logstashのlogstash-input-s3利用時のログ欠損

【環境構成】
複数サーバから同じフォーマットのログをFilebeat利用してLogstash経由(logstash-output-s3)でAWS上のS3バケットに集約して、さらにLogstash(logstash-input-s3)を利用してログをElasticsearchへ転送しています。

【問い合わせ内容】
上記構成において、S3バケットまでログは欠損せずに保管されますが、後続の処理においてログ欠損が発生しています。
収集対象のサーバが複数あるので、どの時間帯でもS3バケット上複数のログファイルが作成されます。
同じ時間帯の複数ログファイルの処理順番とsincedbにあるタイムスタンプの更新によって、ログファイルごとにLogstashに無視される可能性はございますか。
また、この構成においてほかにもログ欠損につながる要因がございましたら、ぜひご教示頂きたいです。

こういう環境を作成したことがないので分からにのですが、S3は結果整合性だからじゃないでしょうか?

1 Like

S3までは欠損がないということであれば、Logstash2側の問題になるかと思います。

欠損のポイントとしては、

  • Input -> pipeline worker のInternal queueで問題発生
  • elasticsearch outputでElasticsearchへのputで何か問題発生

のどちらかが考えられますが、何かLogstash側でエラーは出ていませんか?

2 Likes

ヒントをくださいありがとうございます。S3周りは考慮しませんでした。
調査してみますが、以下の事実を考慮して可能性は低いと考えています。
ほかにLogstash1の前にLogstash0が存在しログを集約して1つのファイルに保存(beats⇒file)する構成も運用しています。そのLogstash0からはFilebeatを使用してLogstash1へログを転送して、以降の構成はこちらと同じですが、ログ欠損は発生していないです。

1 Like

アドバイスを頂きありがとうございます。実際にLogstashのログを確認しましたが、Logstash側でエラーがありませんでした。

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.