0

Flume イベントごとに、ファイルのファイル名とファイル作成日を spooldir ディレクトリに追加する必要があるという要件があります。fileHeader=true を設定することで、イベントのヘッダーにファイル名を追加できることがわかりました。同様に、カスタム インターセプターを記述してファイルの作成日を見つけることもできますか?

4

1 に答える 1

0

ファイル名は、スプール ソースの実装内で設定されます。

if (annotateFileName) {
  String filename = currentFile.get().getFile().getAbsolutePath();
  for (Event event : events) {
    event.getHeaders().put(fileNameHeader, filename);
  }
}

これは、その Source タイプの具体的な実装の詳細です。元のファイル名を保持したい場合は、プロパティを設定する必要があります。これらは利用可能なオプションです:

fileHeader  false   Whether to add a header storing the absolute path filename.
fileHeaderKey   file    Header key to use when appending absolute path filename to event header.

タイムスタンプを追加したい場合は、組み込みのインターセプターを実際に使用できます。

  • タイムスタンプの TimestampInterceptor
  • Flume インスタンスのホスト名の Host Interceptor
  • 任意の定数値の StaticInterceptor。
于 2015-02-17T12:14:43.023 に答える