flume spooldir获取源文件的文件元数据

xwbd5t1u  于 2021-06-04  发布在  Flume
关注(0)|答案(1)|浏览(372)

我有一个要求,在每个flume事件中,我必须在spooldir directoy中添加文件名和文件创建日期。我发现我可以通过设置fileheader=true在事件头中添加filename。同样,我也可以通过编写一些自定义拦截器来查找文件创建日期吗?

dba5bblo

dba5bblo1#

文件名在spool源实现中设置:

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

这是该源类型的特定实现细节。如果要保留原始文件名,则需要设置属性,以下是可用选项:

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.

如果要添加时间戳,实际上可以使用内置拦截器:
时间戳拦截器
flume示例主机名的主机侦听器
任何常量值的staticinterceptor。

相关问题