elasticsearch 使用ELK处理来自同一台机器的多个日志,elasticsearch,logstash,elastic-stack,elk,elastic-beats,elasticsearch,Logstash,Elastic Stack,Elk,Elastic Beats" /> elasticsearch 使用ELK处理来自同一台机器的多个日志,elasticsearch,logstash,elastic-stack,elk,elastic-beats,elasticsearch,Logstash,Elastic Stack,Elk,Elastic Beats" />

elasticsearch 使用ELK处理来自同一台机器的多个日志

elasticsearch 使用ELK处理来自同一台机器的多个日志,elasticsearch,logstash,elastic-stack,elk,elastic-beats,elasticsearch,Logstash,Elastic Stack,Elk,Elastic Beats,我有一个包含多个日志文件的主机。2此类日志文件为csab和oneapplogs 相应的岩石是 opeapplog: match => {"message" => "\[%{WORD:fixed}\|%{DATA:time}\|%{WORD:word1}\|%{WORD:word2}\|%{WORD:num1}\|%{WORD:num2}\|%{WORD:loglevel}\|%{WORD:num3}\]%{GREEDYDATA:message}"

我有一个包含多个日志文件的主机。2此类日志文件为csab和oneapplogs

相应的岩石是

opeapplog:

match => {"message" => "\[%{WORD:fixed}\|%{DATA:time}\|%{WORD:word1}\|%{WORD:word2}\|%{WORD:num1}\|%{WORD:num2}\|%{WORD:loglevel}\|%{WORD:num3}\]%{GREEDYDATA:message}"}
match => {"message" => "\[%{NONNEGINT:fixed}\|%{DATA:time}\|%{WORD:word1}\|%{NONNEGINT:num1}\|%{NONNEGINT:num2}]\[%{USERNAME:word2}\:%{NONNEGINT:num3}\] %{WORD:word1} : %{USERNAME:fixed} = %{NONNEGINT:num5}"}
csab:

match => {"message" => "\[%{WORD:fixed}\|%{DATA:time}\|%{WORD:word1}\|%{WORD:word2}\|%{WORD:num1}\|%{WORD:num2}\|%{WORD:loglevel}\|%{WORD:num3}\]%{GREEDYDATA:message}"}
match => {"message" => "\[%{NONNEGINT:fixed}\|%{DATA:time}\|%{WORD:word1}\|%{NONNEGINT:num1}\|%{NONNEGINT:num2}]\[%{USERNAME:word2}\:%{NONNEGINT:num3}\] %{WORD:word1} : %{USERNAME:fixed} = %{NONNEGINT:num5}"}
当我尝试通过logstash将这两个文件发送到Elasticsearch时,由于日志不同,我有两个单独的logstash conf文件,用于从filebeats输入的不同端口

我不能同时运行不同的filebeats。我已经读到,要做到这一点,我需要在机器中配置完全独立的filebeat实例,但我有60多个日志,因此设置60个实例似乎很有挑战性

有没有办法通过1个filebeats实例将所有文件发送到logstash,然后使用logstash将所有日志处理为多个不同的输出,以用于elasticsearch

简单解释 我在同一台机器上有两个日志。我需要用麋鹿来处理它们

我已经配置了一个具有两个管道的日志存储服务,两个管道都提供了单独的端口。假设管道1(端口5044),管道2(端口5045)

现在我想使用filebeat将数据发送到日志存储。我有两种类型的日志文件,比如log1,log2

我想将log1发送到管道1,将log2发送到管道2

仅使用1个filebeats实例就可以做到这一点

或者是否有其他解决方法来处理来自同一主机的不同日志


任何帮助或建议都将不胜感激。非常感谢

我不明白,当您可以在一个配置文件中实现所有这些功能时,为什么需要对两个源进行单独的配置

假设系统中有两个源可从中读取日志,并且仅在一个filebeat配置中设置了两个不同的源

Output{
If source ~=‘/file/path/for/first/log’
Elasticsearch {
..
..
}
else If source ~=‘/file/path/for/second/log’
Elasticsearch {
..
..
}
}