elk中filebeat的使用

这篇具有很好参考价值的文章主要介绍了elk中filebeat的使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.前言

Filebeat是一个轻量级的开源日志数据收集器,用于将日志和文件数据从不同的来源发送到各种目的地,如Elasticsearch、Logstash和Kafka等。它是Elastic Stack(之前称为ELK Stack)的一部分,用于实时数据传输和集中式日志管理,Filebeat的主要作用是实时监控指定的日志文件或位置,以及持续不断地将新数据发送到目标位置。它可以解析各种格式的日志数据,并将其转发到配置的输出目标

在标准架构中,filebeat通常用来部署在每个需要收集日志的主机上,收集主机中的日志,然后统一发送到logstash中但在日志量大的架构中,需要加入消息队列,可以有效避免日志的丢失和避免日志量的暴涨导致logstash崩溃

2.filebeat的使用

filebeat收集日志输出到elasticsearch

vi /opt/filebeat/filebeat/filebeat.yml

filebeat.inputs:
- type: log    #定义类型为log
  enabled: true     #启用该配置
  paths:           #日志的路径配置
     - /var/log/nginx/access.log
  fields:
      log_type: nginx_access       #自定义名称,在有多个日志路径的情况下,可以将日志通过自定义的名称字段区分开来,分别输入不同的elasticsearch索引中,后面kafka也会用到
  tail_files: true
  json.keys_under_root: true       #输入的日志为json格式时需要配置本项与下一项参数
  json.overwrite_keys: true        
# ======================= Elasticsearch template setting =======================
setup.template.settings:
  index.number_of_shards: 1         #配置elasticsearch主分片数量,但是配置了好像无效,还是默认的一个主分片
setup.template.name: "nginx"        #这个配置项用于设置 Elasticsearch index template(索引模板) 的名称,这里设置为nginx
setup.template.pattern: "nginx-*"    #这个配置项用于设置 Elasticsearch index pattern(索引模式),这里设置为 "nginx-*",表示所有以 "nginx-" 开头的 index 都会使用这个 template
setup.template.overwrite: false      #这个配置项用于设置是否覆盖已经存在的 template。这里设置为 false,表示如果已经存在同名的 template,则不会被覆盖
setup.template.json.enabled: true    #这个配置项用于设置是否启用 JSON 格式的 template。这里设置为 true,表示使用 JSON 格式的 template
setup.template.enabled: false        #这个配置项用于设置是否启用 Elasticsearch index template。这里设置为 false,表示不使用 Elasticsearch index template(索引模板)
setup.ilm.enabled: false            #这个配置项用于设置是否启用 Index Lifecycle Management(ILM)。这里设置为 false,表示不使用 ILM
# ---------------------------- Elasticsearch Output ----------------------------
output.elasticsearch:
  hosts: ["10.1.60.114:9200","10.1.60.115:9200","10.1.60.118:9200"]  #配置elasticsearch地址
  index: "%{[fields.log_type]}-%{+yyyy.MM.dd}"    #配置elasticsearch索引名称,此处使用了自定义的名称变量和时间变量作为索引名称,这样就能实现再有多个不同日志的情况下,自动创建多个不同的索引,还能根据时间自动切割每日的日志,关于多个日志的配置,下面kafka配置会展示

filebeat收集日志输出到logstash

vi /opt/filebeat/filebeat/filebeat.yml

filebeat.inputs:   #此处配置,收集了两个不同的日志
- type: log
  enabled: true
  paths:
     - /var/log/nginx/access.log
  fields:
      log_type: nginx-access-log       #自定义名称,在有多个日志路径的情况下,可以将日志通过自定义的名称字段区分开来,分别输入不同的elasticsearch索引中,后面kafka也会用到
  tail_files: true
- type: log
  enabled: true
  paths:
     - /var/log/nginx/error.log
  fields:
      log_type: nginx-error-log      #自定义名称,在有多个日志路径的情况下,可以将日志通过自定义的名称字段区分开来,分别输入不同的elasticsearch索引中,后面kafka也会用到
  tail_files: true

# ------------------------------ Logstash Output -------------------------------
output.logstash:
  hosts: ["10.1.60.115:5044"]    #配置logstash地址,此端口需要根据logstash配置的填写

 logstash配置可以参考:logstash收集日志到elasticsearch_Apex Predator的博客-CSDN博客

filebeat收集日志输出到kafka

vi /opt/filebeat/filebeat/filebeat.yml

filebeat.inputs:
- type: log
  enabled: true
  paths:
     - /var/log/nginx/access.log
  fields:
      log_type: nginx-access-log       #自定义名称,在有多个日志路径的情况下,可以将日志通过自定义的名称字段区分开来,分别输入不同的elasticsearch索引中,后面kafka也会用到
  tail_files: true
- type: log
  enabled: true
  paths:
     - /var/log/nginx/error.log
  fields:
      log_type: nginx-error-log      #自定义名称,在有多个日志路径的情况下,可以将日志通过自定义的名称字段区分开来,分别输入不同的elasticsearch索引中,后面kafka也会用到
  tail_files: true

# ------------------------------ kafka Output -------------------------------
#filebeat配置文件里默认是没有kafka的配置的,需要自己添加
output.kafka:
  enabled: true    #开启output到kafka
  hosts: ["10.1.60.112:9092","10.1.60.114:9092","10.1.60.115:9092"]  #配置kafka集群地址和端口
  topic: '%{[fields][topic]}'    #主题名称,通过以上自定义的字段变量分别自动写入对应的消息队列中,若是没有创建好的队列,则会自动创建,但是创建的队列只有一个分区且没有副本,建议提前根据名称在kafka创建好分区

后续的调用参考logstash:logstash收集日志到elasticsearch_Apex Predator的博客-CSDN博客文章来源地址https://www.toymoban.com/news/detail-534338.html

到了这里,关于elk中filebeat的使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用ELK(ES+Logstash+Filebeat+Kibana)收集nginx的日志

    书接上回:《ELK中Logstash的基本配置和用法》 默认情况下,Nginx的日志记录的是下面的格式: 在 nginx.conf 中也可以看到相关配置信息: 现在为了方便收集日志,我们把这里的格式改为 json格式,在 nginx.conf 中加入下面的内容: 以上配置是手动组装了一个json格式的配置信息。

    2024年02月11日
    浏览(48)
  • ELK实例----使用filebeat收集tomcat日志到ES并利用kibana展示

    节点名称 节点名称 ip地址 kibana kibana 10.0.0.100 elasticsearch elasticsearch 10.0.0.101 filebeat filebeat 10.0.0.102 elasticsearch、Kibana、metricbeat、filebeat版本要一致,如都是7.17.5版本 1.2.1 安装elasticsearch CPU 2C 内存4G或更多 1.2.2 安装 Kibana 1.2.3 安装metricbeat 1.2.3 安装filebeat 1.2.4 安装Nginx 1.2.5 安装t

    2024年02月09日
    浏览(53)
  • 使用Docker安装ELK(Elasticsearch+Logstash+Kibana)+filebeat____基于CentOS7.9

    目录 一、安装JDK 二、部署Elasticsearch 三、部署kibana 四、部署Logstash 五、部署filebeat 六、filebeat采集数据,logstash过滤,在kibana中显示 七、kibana增加索引 1、更新系统 2、安装Java 下面是安装OpenJDK的命令: 3、验证安装 1、查看是否安装docker 安装最新版的docker可能导致部分系统不

    2024年02月04日
    浏览(50)
  • [ELK] ELK+Filebeat变成ELK stack

    在 Node1 节点上操作 1. 安装 Filebeat 2. 设置 filebeat 的主配置文件      3. 启动 filebeat    4.在 Logstash 组件所在节点上新建一个 Logstash 配置文件   5.浏览器访问    作用:grok 使用文本片段切分的方式来切分日志事件 2.1 内置正则表达式调用  ●SYNTAX代表匹配值的类型,例如

    2024年01月20日
    浏览(38)
  • ELK (一)部署ELK+Filebeat日志收集分析系统

    说明:此安装流程只适用于8.0.0以下的版本 1.1 下载ElasticSearch的wget指令: 1.2 解压安装包到指定目录 指定解压缩到 /usr/local 目录下 1.3 修改配置文件 (1)elasticsearch.yml 分别创建 path.data、path.logs 对应的 data、logs文件夹。 详细配置: (2)limits.conf 末尾追加以下内容: (3)s

    2024年02月08日
    浏览(48)
  • Filebeat+Kafka+ELK

    目录 1 Kafka 架构深入 1.1 Kafka 工作流程及文件存储机制 1.2 数据可靠性保证 2.1 部署 Zookeeper+Kafka 集群 2.2 部署 Filebeat Kafka 中消息是以 topic 进行分类的,生产者生产消息,消费者消费消息,都是面向 topic 的。 topic 是逻辑上的概念,而 partition 是物理上的概念,每个 partition 对应

    2024年02月08日
    浏览(38)
  • Filebeat+ELK 部署

    Node1节点(2C/4G):node1/192.168.8.10                   Elasticsearch  Kibana Node2节点(2C/4G):node2/192.168.8.11                    Elasticsearch Apache节点:apache/192.168.8.13                      Logstash  Apache Filebeat节点:filebeat/192.168.8.20                    Filebeat   //在 Node1 节

    2024年02月14日
    浏览(43)
  • 【ELFK】Filebeat+ELK 部署

    Filebeat+ELK 部署 在 Filebeat 节点上操作 环境准备 1)安装 Filebeat #上传软件包 filebeat-6.2.4-linux-x86_64.tar.gz 到/opt目录 解压 rpm 默认会安装到/etc/ 目录下;tar安装的filebeat 文件要移动到/user/local/ 下  2)设置 filebeat 的主配置文件 先备份再修改 修改filebeat.yml 配置文件 1 1 1 1 1 启动

    2024年04月15日
    浏览(42)
  • ELK+FileBeat日志分析系统

    ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是开源软件。新增了一个FileBeat,它是一个轻量级的日志收集处理工具(Agent),Filebeat占用资源少,适合于在各个服务器上搜集日志后传输给Logstash,官方也推荐此工具。 Elasticsearch是个开源分布式搜索引擎

    2024年02月08日
    浏览(39)
  • 实验 elk+filebeat+kafka

    kafka 3.4.1 elk+filebeat+kafka 实现日志收集 httpd1 mysql1 topic 2.7 3.0 关闭防火墙 systemctl stop firewalld systemctl disable firewalld setenforce 0 安装 JDK yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel java -version 安装 Zookeeper cd /opt tar -zxvf apache-zookeeper-3.5.7-bin.tar.gz mv apache-zookeeper-3.5.7-bin /opt/zookeeper 修改

    2024年02月05日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包