假设我有一条这样的道路:
paths:
- /var/log/webapp/*.log*
- /var/log/webapp/*app*.log*
document_type: webapp
如何根据/ var / log / * /下的文件夹名称将文档类型命名为*?
中的任何内容?示例:
/ var / log / app / * - 生成应用日志
/ var / log / alpha / * - 生成alpha日志
/ var / log // beta / * - 生成beta日志
/ var / log / delta / * - 生成增量日志。
是否可以使用节拍执行此操作,还是需要使用grok或ruby过滤器在logstash端处理此操作?
答案 0 :(得分:1)
至少有两种方法可以做到这一点:
第一种是在Filebeat配置中创建不同的探测器,这些探测器是特定于日志类型的文件夹。这是官方推荐的方法。
OR
如果您想使用一个宽浏览器并避免使用内置解决方案来解决您的问题,请使用logstash。 Filebeat为您提供了一个具有原始文件路径的字段,我认为它名为file
。你可以这样说:
file => "/var/log/%{WORD:log_type}/%{GREEDYDATA}"
我在这里遇到的问题是Filebeat设置的类型似乎对Logstash的更改有抵抗,不确定它是如何工作的,但是当我尝试它时肯定是一件令人头疼的事。