Logstash 日志存储配置:为不同目的设置过滤器

Logstash 日志存储配置:为不同目的设置过滤器,logstash,logstash-configuration,Logstash,Logstash Configuration,是否可以为不同的目的配置相同的logstash.conf? 例如: 应用程序日志 错误跟踪 我有一个Spring Boot应用程序,我使用logstash logback编码器插件是的,你可以,但每个索引都需要某种标识,例如类型或标记。我更喜欢使用标记,因为当数据包含名为“type”的字段时,可能会遇到问题。查看下面的示例配置文件,了解两个索引: input { file { path => "/log/app_log.log" tags => ["app_l

是否可以为不同的目的配置相同的logstash.conf? 例如:

  • 应用程序日志
  • 错误跟踪

我有一个Spring Boot应用程序,我使用logstash logback编码器插件

是的,你可以,但每个索引都需要某种标识,例如类型或标记。我更喜欢使用标记,因为当数据包含名为“type”的字段时,可能会遇到问题。查看下面的示例配置文件,了解两个索引:

input {
  file {
    path => "/log/app_log.log"
    tags => ["app_log"]
  }

  file {
    path => "/log/stacktrace.log"
    type => ["stacktrace"]
  }
}

filter {
  if "app_log" in [tags] {
  #Some fitlering for app_log  
  }
  if "stacktrace" in [tags] {
  #Some fitlering for stacktrace
  }

}

output {
   if "app_log" in [tags] {
      elasticsearch {
         index => "app_log-%{+YYYY.MM.dd}"
         hosts => ["localhost:9200"]
      }
   }
   if "stacktrace" in [tags] {
       elasticsearch {
         index => "stacktrace-%{+YYYY.MM.dd}"
         hosts => ["localhost:9200"]
       }
   }
}

您还可以添加任意数量的jdbc输入。您不必担心不同输入之间的中断时间,因为logstash并行运行每个输入。

tcp输入也可以这样做吗?我考虑设置两个不同的端口,并在logback中使用两个logstash appender。xml@AlessioFrabotta我从未尝试过tcp输入,但我认为它应该可以工作。你总是可以制作两条管道,但只需几个输入,这是不必要的复杂。几乎可以肯定,但你必须盯着它看,并找出它。可能是重复的