5

重新启动 Logstash 后,有时会观察到 Logstash 复制日志事件。想知道应用配置选项start_position的正确方法sincedb_path是什么。sincedb_write_interval

  • 当在同一位置有多个文件时会发生什么,如下面的示例所示/home/tom/testData/*.log
  • 当文件轮换发生时会发生什么,例如XXX.log文件被重命名为XXX-<date>.log并创建一个新XXX.log文件。在这种情况下,名称不会改变,但 inode 会改变。

如果有人能对此有所了解,将不胜感激。

input {
           file {
             path => "/home/tom/testData/*.log"
             type => "log"
             start_position => "beginning"
             sincedb_path => "/persistent/loc"        
             sincedb_write_interval => 10
               }
       }
4

1 回答 1

5

start_position(开始或结束)仅用于尚未被 logstash 看到的文件。使用“开始”的唯一原因是当您尝试加载旧文件时。

因为db_path 只需要是logstash 对注册表具有写权限的目录。

sincedb_write_interval 定义logstash 应该多久写入一次 sincedb 注册表。较大的值会使您面临 logstash 崩溃的风险。

当您有多个与您的 glob 匹配的文件时,logstash 通过在注册表中有多个条目来分别跟踪它们。

注册表包含 inode 编号,因此 logstash 知道在该类型的轮换中要做什么。

于 2015-05-04T17:04:17.730 回答