当前位置: 首页 > news >正文

ELK安装、部署、调试(五)filebeat的安装与配置

1.介绍

logstash 也可以收集日志,但是数据量大时太消耗系统新能。而filebeat是轻量级的,占用系统资源极少。

Filebeat 由两个主要组件组成:harvester 和 prospector。

采集器 harvester 的主要职责是读取单个文件的内容。读取每个文件,并将内容发送到 the output。 每个文件启动一个 harvester,harvester 负责打开和关闭文件,这意味着在运行时文件描述符保持打开状态。如果文件在读取时被删除或重命名,Filebeat 将继续读取文件。

查找器 prospector 的主要职责是管理 harvester 并找到所有要读取的文件来源。如果输入类型为日志,则查找器将查找路径匹配的所有文件,并为每个文件启动一个 harvester。每个 prospector 都在自己的 Go 协程中运行。

2.下载

下载地址:www.elastic.co/downloads/beats/filebeat

百度云elk

3.安装

tar -zxvf filebeat-7.9.3-linux-x86_64.tar.gz -C /usr/local
cd /usr/local/
mv filebeat-7.9.3-linux-x86_64 filebeat
cd filebeat/
[root@node1 filebeat]# ls -l
fields.yml     filebeat      filebeat.reference.yml         filebeat.yml         kibana
LICENSE.txt        module         modules.d      NOTICE.txt         README.md

filebeat为应用程序
cd /usr/local/filebeat/filebeat.yml 是配置文件
modules.d的目录下放置的日志收集模板,实现了模块化的日志收集

[root@node1 modules.d]# ls
activemq.yml.disabled    coredns.yml.disabled        ibmmq.yml.disabled     microsoft.yml.disabled 
okta.yml.disabled        squid.yml.disabled    apache.yml.disabled      crowdstrike.yml.disabled    icinga.yml.disabled    misp.yml.disabled       osquery.yml.disabled     suricata.yml.disabled
auditd.yml.disabled      cylance.yml.disabled        iis.yml.disabled       mongodb.yml.disabled    
panw.yml.disabled        system.yml.disabled   aws.yml.disabled         elasticsearch.yml.disabled  imperva.yml.disabled   mssql.yml.disabled      postgresql.yml.disabled  tomcat.yml.disabled
azure.yml.disabled       envoyproxy.yml.disabled     infoblox.yml.disabled  mysql.yml.disabled      
rabbitmq.yml.disabled    traefik.yml.disabled   barracuda.yml.disabled   f5.yml.disabled             iptables.yml.disabled  nats.yml.disabled        radware.yml.disabled     zeek.yml.disabled
bluecoat.yml.disabled    fortinet.yml.disabled       juniper.yml.disabled   netflow.yml.disabled    
redis.yml.disabled       zscaler.yml.disabled   cef.yml.disabled         googlecloud.yml.disabled    kafka.yml.disabled     netscout.yml.disabled     santa.yml.disabled
checkpoint.yml.disabled  gsuite.yml.disabled         kibana.yml.disabled    nginx.yml.disabled      
sonicwall.yml.disabled  cisco.yml.disabled       haproxy.yml.disabled        logstash.yml.disabled  o365.yml.disabled      
sophos.yml.disabled

4.配置

配置filebeat.yml
注意 以下使用“-” 为首字母的,要求前面不能使用tab做缩进,

filebeat.inputs:                      #定义日志输入的开始
- type: log        #注意格式,收集日志类型为日志,还可以是redis,UDP,TCP,docker,syslog,stdin等enabled: true                       #使用手动模式,如果false将使用modules.d目录下的模块方式paths:                              #要收集的日志的路径- /var/log/messages- /var/log/secure#如果日志较多,可以模糊的填写,如 - /data/nginx/logs/ngix_*.log# - /var/log/*.log 的配置会获取/var/log下所有子目录中以.log结尾的日志,而不会查找/var/log/目录下的.log文件。fields:log_topic:osmessages              #osmessages是自己定义主体的名字
name: "10.10.10.56"                  #指定名字,不配置时默认使用主机名
output.kafka:eanbled: truehosts: ["10.10.10.71:9092","10.10.10.72:9092","10.10.10.73:9092"]   #kafka集群的地址和端口号version: 2.0.1                     #kafka的版本号topic: '%{[fields][log_topic]}'    #也可以fields.log_topic的写法partition.round_robin:             #采用轮询的方式reachable_only: trueworker: 2required_acks: 1                    #有1,2,3等可写,1最大限度保证compression: gzipmax_message_bytes: 10000000logging.level: debug                 #info,warming,error等可写,定义  日志级别配置里还包含一些过滤条件,如行排除,行包含,文件排除等
exclude_lines: ['^DBG']
include_lines: ['^ERR', '^WARN']
exclude_files: ['.gz$']

以上配置使用了kafka作为filebeat的输出,

配置

# ============================== Filebeat modules ==============================filebeat.config.modules:# Glob pattern for configuration loadingpath: ${path.config}/modules.d/*.yml# Set to true to enable config reloadingreload.enabled: false# Period on which files under path should be checked for changes#reload.period: 10s# ======================= Elasticsearch template setting =======================文档中还有一些模块的配置,如上
由于我们在
filebeat.inputs: 
- type: log        enabled: true      这里我们设置为了true,使用了手动配置的方式,屏蔽了快速模块,这里配置为false时,才使用模块配
置


使用./filebeat test config 或者./filebeat -c filebeat.yml -configtest 对配置文件进行格式测试。检查启动filebeat

more filebeat.ymlnohup /usr/local/filebeat/filebeat -e -c /usr/local/filebeat/filebeat.yml &

测试
tail -f nohup.out 查看收集的日志

"@timestamp": "2023-08-28T07:56:14.266Z",  时间戳"@metadata": {"beat": "filebeat",                       "type": "_doc","version": "7.9.3"},"log": {                                   类型"file": {"path": "/var/log/secure"},"offset": 508431                         位置,偏移量},"message": "Aug 28 15:56:12 node1 sshd[31513]: pam_limits(sshd:session): invalid line 'End of file' -
skipped","fields": {                                 自定义的域"log_topic": "osmessages"},"input": {                                  类型"type": "log"},"agent": {"id": "a5a5cdf5-42f5-40a8-8c4c-068b76a2b22c","name": "10.10.10.56","type": "filebeat","version": "7.9.3","hostname": "node1","ephemeral_id": "826d8757-65f0-4838-b915-409eba0cd6bf"},"ecs": {"version": "1.5.0"},"host": {"name": "10.10.10.56"}
}

我们看到,很多信息都是filebeat附带的一些信息。    我们可以通过配置参数的过滤掉一些信息。

# ================================= Processors =================================
processors:
#  - add_host_metadata:
#      when.not.contains.tags: forwarded
#  - add_cloud_metadata: ~
#  - add_docker_metadata: ~
#  - add_kubernetes_metadata: ~- drop_fields:fields: ["host","input","offset","ecs","log","agent.id"]

drop_fields:所定义的就是不需要在日志中显示的filebeat自带的一些信息。
上面的配置信息agent.id ,因为agent下有很多个属性,仅过滤掉id这个属性

 "agent": {"id": "a5a5cdf5-42f5-40a8-8c4c-068b76a2b22c","name": "10.10.10.56","type": "filebeat","version": "7.9.3","hostname": "node1","ephemeral_id": 

这样配置后,将在日志文件中过滤掉 以上属性的内容,仅显示留下的内容。


通过tail -f nohup.out查看本机产生的日志
通过在kafka机器上用过消费来开传到kafka上的日志
cd /usr/local/kafka/bin
./kafka-console-consumer.sh  --bootstrap-server 10.10.10.71:9092,10.10.10.72:9092,10.10.10.73:9092 --topic
osmessages
 

相关文章:

ELK安装、部署、调试(五)filebeat的安装与配置

1.介绍 logstash 也可以收集日志,但是数据量大时太消耗系统新能。而filebeat是轻量级的,占用系统资源极少。 Filebeat 由两个主要组件组成:harvester 和 prospector。 采集器 harvester 的主要职责是读取单个文件的内容。读取每个文件&…...

Python数据分析案例30——中国高票房电影分析(爬虫获取数据及分析可视化全流程)

案例背景 最近总看到《消失的她》票房多少多少,《孤注一掷》票房又破了多少多少..... 于是我就想自己爬虫一下获取中国高票房的电影数据,然后分析一下。 数据来源于淘票票:影片总票房排行榜 (maoyan.com) 爬它就行。 代码实现 首先爬虫获…...

科技资讯|苹果Vision Pro头显申请游戏手柄专利和商标

苹果集虚拟现实和增强现实于一体的头戴式设备 Vision Pro 推出一个月后,美国专利局公布了两项苹果公司申请的游戏手柄专利,其中一项的专利图如下图所示。据 PatentlyApple 报道,虽然专利本身并不能保证苹果公司会推出游戏手柄,但是…...

Compose学习 - remember、mutableStateOf的使用

一、需求 在显示界面中,数据变动,界面刷新是非常常见的操作,所以使用compose该如何实现呢? 二、remember、mutableStateOf的使用 我们可以借助标题的两个概念 remember、mutableStateOf来完成。这里先不写定义,定义…...

字符串哈希

字符串前缀哈希法 str "ABCABCDEHGJK" 预处理每一个前缀的哈希值,如 : h[0] 0; h[1] "A"的哈希值 h[2] "AB"的哈希值 h[3] "ABC"的哈希值 h[4] "ABCA"的哈希值 问题 : 如何定义一个前缀的哈希值 : 将字符串看…...

【python】【centos】使用python杀死进程后自身也会退出

问题 使用python杀死进程后自身程序也会退出,无法执行后边的代码 这样不行: # cmd " ps -ef | grep -v grep | grep -E task_pull_and_submit.py$|upgrade_system.py$| awk {print $2}"# pids os.popen(cmd).read().strip(\n).split(\n)# p…...

【ES系列】(一)简介与安装

首发博客地址 首发博客地址[1] 系列文章地址[2] 教学视频[3] 为什么要学习 ES? 强大的全文搜索和检索功能:Elasticsearch 是一个开源的分布式搜索和分析引擎,使用倒排索引和分布式计算等技术,提供了强大的全文搜索和检索功能。学习 ES 可以掌…...

opencv案例06-基于opencv图像匹配的消防通道障碍物检测与深度yolo检测的对比

基于图像匹配的消防通道障碍物检测 技术背景 消防通道是指在各种险情发生时,用于消防人员实施营救和被困人员疏散的通道。消防法规定任何单位和个人不得占用、堵塞、封闭消防通道。事实上,由于消防通道通常缺乏管理,导致各种垃圾&#xff0…...

练习2:88. 合并两个有序数组

这里写自定义目录标题 题目解体思路代码 题目 给你两个按非递减顺序排列的整数数组 nums1 和 nums2,另有两个整数 m和 n ,分别表示 nums1 和 nums2中的元素数目。 请你合并nums2 到 nums1 中,使合并后的数组同样按非递减顺序排列。 注意&a…...

【代码随想录day23】不同路径

题目 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。 问总共有多少条不同的路径? 示…...

SpringBoot 博客网站

SpringBoot 博客网站 系统功能 登录注册 博客列表展示 搜索 分类 个人中心 文章分类管理 我的文章管理 发布文章 开发环境和技术 开发语言:Java 使用框架: SpringBoot jpa H2 Spring Boot是一个用于构建Java应用程序的开源框架,它是Spring框架的一…...

【分布式搜索引擎elasticsearch】

文章目录 1.elasticsearch基础索引和映射索引库操作索引库操作总结 文档操作文档操作总结 RestAPIRestClient操作文档 1.elasticsearch基础 什么是elasticsearch? 一个开源的分布式搜索引擎,可以用来实现搜索、日志统计、分析、系统监控等功能 什么是…...

wireshark 流量抓包例题

一、题目一(1.pcap) 题目要求: 1.黑客攻击的第一个受害主机的网卡IP地址 2.黑客对URL的哪一个参数实施了SQL注入 3.第一个受害主机网站数据库的表前缀(加上下划线例如abc) 4.第一个受害主机网站数据库的名字 看到题目SQL注入&#xff0c…...

【Axure视频教程】表格编号函数

今天教大家在Axure里如何使用表格编号函数,包括表格编号函数的基本原理、在需要翻页的中继器表格里如何正确使用该函数、函数作为条件的应用,包括让指定第几行的元件默认变色效果以及更新对应第几行内容的效果。该教程主要讲解表格编号函数,不…...

大数据-玩转数据-Flink定时器

一、说明 基于处理时间或者事件时间处理过一个元素之后, 注册一个定时器, 然后指定的时间执行. Context和OnTimerContext所持有的TimerService对象拥有以下方法: currentProcessingTime(): Long 返回当前处理时间 currentWatermark(): Long 返回当前watermark的时间戳 registe…...

Linux 操作系统实战视频课 - GPIO 基础介绍

文章目录 一、GPIO 概念说明二、视频讲解沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇我们将讲解 GPIO 。 一、GPIO 概念说明 ARM 平台中的 GPIO(通用输入/输出)是用于与外部设备进行数字输入和输出通信的重要硬件接口。ARM 平台的 GPIO 特性可以根据具体的芯…...

ChatGPT在医疗保健信息管理和电子病历中的应用前景如何?

ChatGPT在医疗保健信息管理和电子病历中有着广阔的应用前景,可以提高医疗保健行业的效率、准确性和可访问性。本文将详细讨论ChatGPT在医疗保健信息管理和电子病历中的应用前景,以及相关的益处和挑战。 ### 1. ChatGPT在医疗保健信息管理中的应用前景 …...

安防监控/视频存储/视频汇聚平台EasyCVR接入海康Ehome车载设备出现收流超时的原因排查

安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等,以及支持厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等。视频汇聚平台既具…...

【zookeeper】zookeeper监控指标查看

zookeeper 监控指标 日常工作中,我们有时候需要对zookeeper集群的状态进行检查,下面分享一些常用的方法。 zookeeper获取监控指标已知的有两种方式: 通过zookeeper自带的四字命令 (four letter words command )获取各…...

Flink 如何处理反压?

分析&回答 什么是反压(backpressure) 反压通常是从某个节点传导至数据源并降低数据源(比如 Kafka consumer)的摄入速率。反压意味着数据管道中某个节点成为瓶颈,处理速率跟不上上游发送数据的速率,而…...

CTF show Web 红包题第六弹

提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框,很难让人不联想到SQL注入,但提示都说了不是SQL注入,所以就不往这方面想了 ​ 先查看一下网页源码,发现一段JavaScript代码,有一个关键类ctfs…...

【OSG学习笔记】Day 18: 碰撞检测与物理交互

物理引擎(Physics Engine) 物理引擎 是一种通过计算机模拟物理规律(如力学、碰撞、重力、流体动力学等)的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互,广泛应用于 游戏开发、动画制作、虚…...

【Oracle APEX开发小技巧12】

有如下需求: 有一个问题反馈页面,要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据,方便管理员及时处理反馈。 我的方法:直接将逻辑写在SQL中,这样可以直接在页面展示 完整代码: SELECTSF.FE…...

遍历 Map 类型集合的方法汇总

1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)

设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile,新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...

Ascend NPU上适配Step-Audio模型

1 概述 1.1 简述 Step-Audio 是业界首个集语音理解与生成控制一体化的产品级开源实时语音对话系统,支持多语言对话(如 中文,英文,日语),语音情感(如 开心,悲伤)&#x…...

【论文阅读28】-CNN-BiLSTM-Attention-(2024)

本文把滑坡位移序列拆开、筛优质因子,再用 CNN-BiLSTM-Attention 来动态预测每个子序列,最后重构出总位移,预测效果超越传统模型。 文章目录 1 引言2 方法2.1 位移时间序列加性模型2.2 变分模态分解 (VMD) 具体步骤2.3.1 样本熵(S…...

Android Bitmap治理全解析:从加载优化到泄漏防控的全生命周期管理

引言 Bitmap(位图)是Android应用内存占用的“头号杀手”。一张1080P(1920x1080)的图片以ARGB_8888格式加载时,内存占用高达8MB(192010804字节)。据统计,超过60%的应用OOM崩溃与Bitm…...

MySQL 部分重点知识篇

一、数据库对象 1. 主键 定义 :主键是用于唯一标识表中每一行记录的字段或字段组合。它具有唯一性和非空性特点。 作用 :确保数据的完整性,便于数据的查询和管理。 示例 :在学生信息表中,学号可以作为主键&#xff…...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现企业微信功能

1. 开发环境准备 ​​安装DevEco Studio 3.1​​: 从华为开发者官网下载最新版DevEco Studio安装HarmonyOS 5.0 SDK ​​项目配置​​: // module.json5 {"module": {"requestPermissions": [{"name": "ohos.permis…...