我有一个要求,对于每个水槽事件,我必须在 spooldir 目录中添加文件的文件名和文件创建日期。我发现我可以通过设置 fileHeader=true 在事件标题中添加文件名。同样,我还可以通过编写一些自定义拦截器来查找文件创建日期吗?
问问题
1058 次
1 回答
0
文件名在 Spool Source 实现中设置:
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 用于时间戳
- 水槽实例主机名的主机拦截器
- 任何常量值的静态拦截器。
于 2015-02-17T12:14:43.023 回答