elasticsearch 从Logstash中的多个目录读取文件?
我使用以下配置读取日志文件(cron_日志、auth_日志、mail_日志等):elasticsearch 从Logstash中的多个目录读取文件?,elasticsearch,logstash,kibana,elasticsearch,Logstash,Kibana,我使用以下配置读取日志文件(cron_日志、auth_日志、mail_日志等): file{ path => '/path/to/log/file/*_log' } 因此,我读取日志文件并检查: if(path) ~= "cron" -----match-------- if(path) ~= "auth" -----match-------- 现在我有一个目录,比如:Server1 Server2 Server3…在Server1中有子目录:authlog cronlog…在au
file{
path => '/path/to/log/file/*_log'
}
因此,我读取日志文件并检查:
if(path) ~= "cron" -----match--------
if(path) ~= "auth" -----match--------
现在我有一个目录,比如:Server1 Server2 Server3
…在Server1
中有子目录:authlog cronlog
…在authlog中有子目录date-wise(比如2014.05.26,2014.05.27
),它们最终包含了当天的日志文件,我必须对其进行解析
因此,目前我有一个配置文件,用于使用*\u log
读取文件,我使用它运行该配置文件,并解析/path/to/log/file/*\u log
中存在的所有日志文件
现在我必须阅读许多目录(如上所述)
我必须为每个目录编写单独的配置文件吗
使用logstash实现这一点的最佳方法是什么?Ruby globs将
**
解释为包括所有子目录
因此,例如,您可以为用户提供如下路径:
/path/to/date/folders/**/*_log
如果我想要目录名(Server1,Server2)和子目录(cron,auth),那么我会相应地应用grok来分别匹配每个文件模式。例如:对于Server1和cron类型------>Pattern1。那么,有没有一种方法可以获取这些信息并在以后对其应用条件呢???您的
文件输入可以;在筛选器块中,您可以使用[tags]
中的likeif“foo”来检查标记。我希望它出现在我的Web界面上,这样就可以先选择Server1,然后选择cronLog。因此必须添加字段
或标记
?两者都可以。在web界面中搜索扁平字段可能会容易一些。