filebeat 中注册表文件的问题

问题描述 投票:0回答:2

我正在使用 filebeat 将数据发送到elasticsearch,

filebeat.prospectors:
- input_type: log
   paths:
     - /var/log/nginx/kibana_access.log

   document_type: nginx

- input_type: log
   paths:
     - /var/log/redis/redis-server.log

   document_type: redis


output.elasticsearch:
# Array of hosts to connect to.
  hosts: ["localhost:9200"]
  index: '%{[type]}-log'
  versions.2x.enabled: false

配置正确,正在完美写入elastic。但是,问题是,它也将旧的线路发送到弹性,然而,它不应该这样做。

没有写入新日志,但在 kibana 中,当 filebeata 再次发送数据时,我可以看到日志计数与之前相同。

我尝试检查注册表文件,

/var/lib/filebeat/registry
,它有我之前使用过但现在没有使用的文件的信息。

{"source":"/var/log/filebeat/filebeat","offset":2514,"FileStateOS":{"inode":4591858,"device":2058},"timestamp":"2017-04-21T17:33:11.913352399+05:30","ttl":-2},{"source":"/var/log/postgresql/postgresql-2017-04-21_120121.log","offset":4485506,"FileStateOS":{"inode":3932558,"device":2058},"timestamp":"2017-04-21T18:11:56.65579033+05:30","ttl":-2}

这是注册表文件。

我设置了一个 cron 作业,每分钟重新启动一次 filebeat,并将数据发送到 elastic。我使用的是 ubuntu 16.04 并将 filebeat 安装为 deb 包。

这是

filebeat.full.yml
-->
${path.data}/registry
中的注册表文件路径。

请解释此行为以及解决方案。

elasticsearch filebeat
2个回答
2
投票

我刚刚删除了这个文件夹

rm -rf /var/lib/filebeat/

已经解决了。


0
投票

rm -rf /var/lib/filebeat/ graet 成功了!

© www.soinside.com 2019 - 2024. All rights reserved.