我可以在读取文件后删除文件,还是在处理完所有文件后通知?
Can I delete a file after it is read, or notify when all are processed?
我有一个通过 Logstash 读入 Elasticsearch 的文件列表。我想知道如何知道什么时候文件都被赶上了。
我正在考虑在文件完全读入后将其删除。
我还没有看到任何关于文件完成或文件删除的通知或确认。
我喜欢一些见解,因为我认为它将成为配置文件的一部分。我就是没见识。
理想情况下:我希望在文件完全消耗后将其删除。这样,我就可以处理所有文件类型,从 txt 文件开始。
使用 logstash 中的 file
输入你可以做到这一点,你需要更改两个配置选项,mode
and file_completed_action
。
您需要将mode
选项更改为read
,默认为tail
,并添加值为delete
的file_completed_action
。
file {
mode => "read"
path => "/path/to/your/files/*.log"
file_completed_action => "delete"
}
我有一个通过 Logstash 读入 Elasticsearch 的文件列表。我想知道如何知道什么时候文件都被赶上了。
我正在考虑在文件完全读入后将其删除。
我还没有看到任何关于文件完成或文件删除的通知或确认。 我喜欢一些见解,因为我认为它将成为配置文件的一部分。我就是没见识。
理想情况下:我希望在文件完全消耗后将其删除。这样,我就可以处理所有文件类型,从 txt 文件开始。
使用 logstash 中的 file
输入你可以做到这一点,你需要更改两个配置选项,mode
and file_completed_action
。
您需要将mode
选项更改为read
,默认为tail
,并添加值为delete
的file_completed_action
。
file {
mode => "read"
path => "/path/to/your/files/*.log"
file_completed_action => "delete"
}