ELK 堆栈中的 Logstash 和 filebeat

     2023-03-25     245

关键词:

【中文标题】ELK 堆栈中的 Logstash 和 filebeat【英文标题】:Logstash and filebeat in the ELK stack 【发布时间】:2019-08-16 20:14:04 【问题描述】:

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

    据我了解,我们可以为每个运行一个 logstash 管道配置文件 应用程序日志文件。这将是一个正在运行的 logstash 实例 有 20 条并行管道,每条管道都需要自己的 击败港口。请确认这是否正确? 我们可以运行一个 filebeat 实例,还是每个都需要一个 管道/日志文件? 此架构是否可行,或者您是否发现任何主要缺点?

谢谢!

*不同的供应商负责不同的应用程序,他们跨多个不同的操作系统运行,其中许多不会或不能安装像 filebeats 这样的东西。

【问题讨论】:

filebeat 应该在有应用程序日志的同一台服务器上,并且您可以将一个 filebeat 配置为读取多个文件 感谢您的回复,但就我而言,无法在运行应用程序的服务器上安装 filebeat。相反,文件将从 ELK 服务器读取。您能否分享有关文件节拍和许多日志的文档的链接? 检查我的答案 【参考方案1】:

我们不建议从网络卷中读取日志文件。每当 可能,在主机上安装 Filebeat 并发送日志文件 直接从那里。从网络卷中读取文件(尤其是在 Windows)可能会产生意想不到的副作用。例如,更改的文件 标识符可能会导致 Filebeat 从头开始​​读取日志文件 再次。

Reference

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

Reference

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

filebeat.inputs:

- type: log

  enabled: true
  paths:
    - 'C:\App01_Logs\log.txt'
  tags: ["App01"]
  fields: 
    app_name: App01

- type: log
  enabled: true
  paths:
    - 'C:\App02_Logs\log.txt'
  tags: ["App02"]
  fields: 
    app_name: App02

- type: log
  enabled: true
  paths:
    - 'C:\App03_Logs\log.txt'
  tags: ["App03"]
  fields: 
    app_name: App03

您可以在过滤器中使用带有 if 语句的 logstash 管道

filter 

    if [fields][app_name] == "App01" 

      grok  

     else if [fields][app_name] == "App02" 

      grok  

     else 

      grok  

    

条件也可以是 if "App02" in [tags]if [source]=="C:\App01_Logs\log.txt",因为我们从 filebeat 发送

【讨论】:

感谢您的反馈和链接。 1.如果我不允许在目标机器上安装 filebeat,你建议什么替代方案? 2. 由于我正在阅读看起来非常不同的日志文件,我的印象是我需要将它们发送到不同的 logstash 管道以进行非常不同的 grok 解析,因此它需要不同的 filebeat.outputs 但就我而言这是不允许的理解。我理解错了吗? @user1329339 对于第 1 点我现在没有建议,对于每个输入部分的第 2 点,您可以拥有例如 tags: ["App01"] 并在 logstash 中使用 if 语句来检查标签并做不同的 grok解析 @user1329339 我已经更新了我的答案以获取更多详细信息 再次感谢您的反馈。不幸的是,我无法在不同的服务器上安装 filebeats。是否可以使用 logstash 文件作为输入而不是 beats 并且对于不同的管道有不同的路径? @user1329339 检查此链接以获取logstash 文件elastic.co/guide/en/logstash/current/…,通常您将如何访问当前不同服务器的日志?

在 ELK 堆栈中调试 Filebeat

...的ELK系统出现了一些问题。客户端工作如下:Filebeat->Logstash-->Elastic-->Kibana我们的部分日志不会从特定机器到达Elastic。我怀疑问题出在Filebeat中的日志收集中。我试图在Elastic和GitHu 查看详情

如何使用 nsq 作为 ELK 堆栈的代理(ElasticSearch+LogStash+Kibana)

】如何使用nsq作为ELK堆栈的代理(ElasticSearch+LogStash+Kibana)【英文标题】:HowtousensqasabrokerfortheELKstack(ElasticSearch+LogStash+Kibana)【发布时间】:2014-08-1305:31:19【问题描述】:我正在尝试使用nsq作为ELKstack的代理。我正在考虑让nsq通过... 查看详情

ini使用elk堆栈(elasticsearch+logstash+kibana)进行脱机sshd日志分析(代码片段)

查看详情

Logstash/Kibana GeoIP 不工作

】Logstash/KibanaGeoIP不工作【英文标题】:Logstash/KibanaGeoIPnotworking【发布时间】:2015-11-1214:15:22【问题描述】:我正在尝试使用可以在Kibana中可视化的ELK堆栈创建GeoIP数据。我最近在UbuntuServer14.04的虚拟实例上安装了ELK堆栈(ElasticSe... 查看详情

搭建办公环境elasticsearch日志分析系统(代码片段)

...善这个日志分析系统。?全文框架如下:?Hillstone:syslog→logstash→elasticsearch→kibana?H3C:syslog→logstash→elasticsearch→kibana?ESXI:syslog→logstash→elasticsearch→kibana?Vcenter:syslog→logstash→elasticsearch→kibana?Windowsserver:winlogbeat→logstash→elastics... 查看详情

ELK(elasticsearch, logstash, kibana, filbeat for agent) 土耳其语字符问题

】ELK(elasticsearch,logstash,kibana,filbeatforagent)土耳其语字符问题【英文标题】:ELK(elasticsearch,logstash,kibana,filbeatforagent)Turkishcharacterproblem【发布时间】:2019-12-0910:14:55【问题描述】:我有ELK堆栈,我使用filebeat作为代理,我正在通过webs... 查看详情

geoip查找失败弹性堆栈logstash

】geoip查找失败弹性堆栈logstash【英文标题】:geoiplookupfailureelasticstacklogstash【发布时间】:2017-06-1505:27:03【问题描述】:使用filebeat将apache日志从Windows系统发送到我在linuxEC2中的logstash服务器,然后发送到弹性搜索和Kibana。弹性... 查看详情

Django 服务器不向 Logstash 发送日志

】Django服务器不向Logstash发送日志【英文标题】:DjangoservernotsendinglogstoLogstash【发布时间】:2017-12-2010:35:47【问题描述】:我正在使用ELK堆栈从我的Django服务器集中记录日志。我的ELK堆栈位于远程服务器上,logstash.conf看起来像这... 查看详情

elk部署

master端:elasticsearch+logstash+redis+kibanaslave端:logstash+nginxor logstash+rsyslog1.slave端收集nginx、syslog日志通过logstash写入到master上的redis中2.master上的logstash读取redis中的日志输出到elastic,kibana再匹配读取elastic上内容 查看详情

elk之logstash

一、简介        Logstash是开源的服务器端数据处理管道,能够同时从多个来源采集数据、转换数据,然后将数据发送到您最喜欢的“存储库”中。(我们的存储库当然是Elasticsearch。)可以用三个词来... 查看详情

elk-logstash

logstash简介:  logstash日志分析的配置和使用   logstash是一个数据分析软件,主要目的是分析log日志。整一套软件可以当作一个MVC模型,logstash是controller层,Elasticsearch是一个model层,kibana是view层。   ... 查看详情

ELK 堆栈中的 REDIS 有啥意义?

】ELK堆栈中的REDIS有啥意义?【英文标题】:WhatisthepointofREDISinELKstack?ELK堆栈中的REDIS有什么意义?【发布时间】:2016-09-0709:08:33【问题描述】:我目前拥有使用filebeat作为日志传送器的架构,它将日志发送到日志存储索引器实例... 查看详情

Logstash 应该只记录 grok 解析的消息

】Logstash应该只记录grok解析的消息【英文标题】:Logstashshouldlogonlygrokparsedmessages【发布时间】:2017-01-1609:54:07【问题描述】:目前我有一个ELK堆栈,其中的日志由filebeat传送,在logstash中的一些过滤器之后,它被转发到ES。由于有... 查看详情

elk搭建实时日志分析平台之二logstash和kibana搭建(代码片段)

...时日志分析平台之一ElasticSearch》文:铁乐与猫四、安装Logstashlogstash是一个数据分析软件,主要目的是分析log日志。1)下载和解压logstash下载地址:https://www.elastic.co/cn/downloads/logstash上传到服务器/usr/ELK目录后,解压:sudotar-zxvflog... 查看详情

elk实验安装logstash

logstash可以理解为log的采集传输组件老样子第一步下载sudowgethttps://artifacts.elastic.co/downloads/logstash/logstash-6.2.4.tar.gz解压出来sudotar-zxvflogstash-6.2.4.tar.gz编辑一下配置配置ip和日志记录的级别vi/config/logstash.ymlhttp.host:"192. 查看详情

elk实时日志分部署(代码片段)

...LK简介“ELK”是三个开源项目的首字母缩写:Elasticsearch,Logstash和Kibana。Elasticsearch是一个搜索和分析引擎。Logstash是一个服务器端数据处理管道,它同时从多个源中提取数据,对其进行转换,然后将其发送到像Elasticsearch这样的“... 查看详情

elk日志分析系统(实例!!!)(代码片段)

ELK日志分析系统概述ELK是Elasticsearch、Logstash、Kibana的简称Elasticsearch是实时全文搜索和分析引擎Logstash是一个用来搜集、分析、过滤日志的工具Kibana是一个基于Web的图形界面,用于搜索、分析和可视化存储在Elasticsearch指标中的日... 查看详情

初探elk-logstash使用小结

初探ELK-logstash使用小结2016/9/12【写在前言】说起处理日志的手段,大家或多或少都听说过ELK(elasticsearch+logstash+kibana),怎么入门呢?咱们从一个小小的目标开始。目标:收集nginx日志,集中展示。不少人对ELK的第一印象,容易... 查看详情