elasticsearch 麋鹿堆中的Logstash和filebeat,elasticsearch,logstash,filebeat,elasticsearch,Logstash,Filebeat" /> elasticsearch 麋鹿堆中的Logstash和filebeat,elasticsearch,logstash,filebeat,elasticsearch,Logstash,Filebeat" />

elasticsearch 麋鹿堆中的Logstash和filebeat

elasticsearch 麋鹿堆中的Logstash和filebeat,elasticsearch,logstash,filebeat,elasticsearch,Logstash,Filebeat,我们正在服务器上设置elasticsearch、kibana、logstash和filebeat,以分析来自许多应用程序的日志文件。由于某些原因*每个应用程序日志文件都会在ELK服务器上的一个单独目录中结束。我们有大约20个日志文件 据我所知,我们可以为每个 应用程序日志文件。这将是一个正在运行的logstash实例 20条管道并联,每条管道都需要自己的管道 打左舷。请确认这是正确的 我们可以运行一个filebeat实例,还是每个实例都需要一个 管道/日志文件 这一架构还可以吗?或者你有没有看到

我们正在服务器上设置elasticsearch、kibana、logstash和filebeat,以分析来自许多应用程序的日志文件。由于某些原因*每个应用程序日志文件都会在ELK服务器上的一个单独目录中结束。我们有大约20个日志文件

  • 据我所知,我们可以为每个 应用程序日志文件。这将是一个正在运行的logstash实例 20条管道并联,每条管道都需要自己的管道 打左舷。请确认这是正确的
  • 我们可以运行一个filebeat实例,还是每个实例都需要一个 管道/日志文件
  • 这一架构还可以吗?或者你有没有看到任何主要的负面影响
  • 谢谢大家!

    *有不同的供应商负责不同的应用程序,他们运行许多不同的操作系统,其中许多不会或不能安装类似filebeats的任何东西

    我们不建议从网络卷读取日志文件。无论何时 可能的话,在主机上安装Filebeat并发送日志文件 直接从那里开始。从网络卷读取文件(尤其是在 Windows)可能会产生意外的副作用。例如,已更改的文件 标识符可能导致Filebeat从头开始读取日志文件 再说一遍

    我们始终建议在远程服务器上安装Filebeat。使用 不支持共享文件夹。典型的设置是您有一个 Logstash+Elasticsearch+Kibana位于中心位置(一个或多个 服务器)和Filebeat安装在您所在的远程计算机上 我们正在收集数据

    对于运行的一个filebeat实例,您可以通过定义多个输入部分,将不同的配置设置应用于不同的文件,如下例所示:

    在过滤器中可以有一个带有if语句的logstash管道

    filter {
    
        if [fields][app_name] == "App01" {
    
          grok { }
    
        } else if [fields][app_name] == "App02" {
    
          grok { }
    
        } else {
    
          grok { }
    
        }
    }
    

    如果[tags]中的“App02”或[source]=“C:\App01_Logs\log.txt”从filebeat发送时,如果[tags]中的“App02”应该位于具有应用程序日志的同一服务器上,则条件也可以是
    ,您可以将一个filebeat配置为读取多个文件感谢您的响应,但在我的情况下,无法在运行该应用程序的服务器上安装filebeat。相反,文件将从ELK服务器读取。你能分享一个关于文件节拍和许多日志的文档链接吗?查看我的回答谢谢你的反馈和链接。1.如果我不被允许在目标机器上安装filebeat,您有什么建议?2.由于我正在读取看起来非常不同的日志文件,我的印象是我需要将它们发送到不同的日志存储管道以进行非常不同的grok解析,因此需要不同的filebeat.outputs,但据我所知,这是不允许的。我理解错了吗?@user1329339对于第1点,我现在没有建议,对于第2点,对于每个输入部分,您可以有例如
    标记:[“App01”]
    ,并且在日志存储中使用if statt检查标记并执行不同的操作parsing@user1329339我已经更新了我的答案以了解更多细节,也再次感谢您的反馈。不幸的是,我不能在不同的服务器上安装filebeats。是否可以使用日志存储文件作为输入而不是beats,并为不同的管道提供不同的路径?@user1329339检查日志存储文件的此链接,以及访问当前不同服务器日志的正常方式?
    filter {
    
        if [fields][app_name] == "App01" {
    
          grok { }
    
        } else if [fields][app_name] == "App02" {
    
          grok { }
    
        } else {
    
          grok { }
    
        }
    }