重新启动 Logstash 后,有时会观察到 Logstash 会重复日志事件。想知道什么是正确的申请方式start_position
, sincedb_path
, sincedb_write_interval
配置选项。
- 当同一位置有多个文件时会发生什么(如下面的示例所示)
/home/tom/testData/*.log
- 当文件旋转发生时会发生什么,例如
XXX.log
文件被重命名为XXX-<date>.log
和一个新的XXX.log
文件已创建。在这种情况下,名称不会改变,但索引节点会改变。
如果有人能对此有所了解,我将不胜感激。
input {
file {
path => "/home/tom/testData/*.log"
type => "log"
start_position => "beginning"
sincedb_path => "/persistent/loc"
sincedb_write_interval => 10
}
}
start_position(开始或结束)仅用于logstash尚未看到的文件。使用“开始”的唯一原因是当您尝试加载较旧的文件时。
sincedb_path 只需是logstash 对注册表具有写权限的目录即可。
sincedb_write_interval 定义logstash 写入sincedb 注册表的频率。较大的值会让您面临 Logstash 崩溃的风险。
当您有多个与您的 glob 匹配的文件时,logstash 通过在注册表中包含多个条目来单独跟踪它们。
注册表包含索引节点号,因此 Logstash 知道在这种类型的轮换中要做什么。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)