elasticsearch - 及时将多个日志从filebeat发送到logstash
问题描述
我有一台服务器,所有日志都存在于一个目录中。
现在这些文件按日期分隔。如何设置 filebeat 以便将这些日志文件中的所有日志文件发送到其他服务器上的 kibana(以及如何配置它),以便在单个文件中以相同的及时方式接收日志。
例如:在服务器 A 中:我有 40 个最近 40 天的日志文件
我希望及时将这 40 条日志从最旧到最新放在其他服务器的单个文件中。
并且带有今天日期的文件也将使用新日志进行更新。
我已经配置了 filebeat 和 logstash 以便保持同步,但是日志没有及时处理,因此我在通过某些逻辑处理它时遇到了问题。
球状图案
/directory to logs/*.log
解决方案
如果您询问如何使用 filebeat 和 logstash 将一组日志文件按时间排序顺序远程同步到单个文件,那么...
如果你将harvester_limit设置为1,这样一次只处理一个文件,那么我认为你可以使用scan.order和scan.sort来获取filebeat以正确的顺序发送数据。logstash 是一个更大的问题。在当前版本中,您可以禁用 java 执行引擎(logstash.yml 中的“pipeline.java_execution: false”)并设置“--pipeline.workers 1”,在这种情况下,logstash 将保留顺序。
在未来的版本中,我不希望弹性维护两个执行引擎,因此一旦 ruby 执行引擎退役,就无法阻止事件在管道中重新排序(java 引擎通常会以可重现的方式重新排序管道中的事件但不可预测的方式)。
推荐阅读
- python - tf.nn.leaky_relu( features, alpha=0.2, name=None ) 中关于 alpha 的详细信息
- wordpress - 如何停止我的 .htaccess 文件自动更新?
- javascript - 如何查找此数组是否有重复的对象,其中包含另一个数组
- arrays - 嵌套的 json 数据未显示在 ag 网格行数据中
- selenium - 关闭对话框 selenium
- python - AbiWord:[文件路径/测试]不是有效的文件名?
- docker - 使用 docker-compose 安装 Portainer 和 Portainer 代理?
- sql - 如何查找当前时区 ID
- android - json解码列表在颤动中返回null
- c++ - 数组操作在插入后和执行一个操作循环退出后面临数组大小变化的问题