ELK7.x日志系统搭建 3. 采用轻量级日志收集Filebeat

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: ELK7.x日志系统搭建 3. 采用轻量级日志收集Filebeat

ELK7.x日志系统搭建 3. 采用轻量级日志收集Filebeat

当我们在对系统日志进行处理的时候,我们需要结合成本考虑方案,前期如果使用 Logstash 进行日志收集的话会耗费较多的机器性能,我们这里选择优化一下日志的采集。简单介绍一下即将出场的家伙: filebeat

首先 filebeatBeats 中的一员。 Beats 在是一个轻量级日志采集器,其实 Beats 家族有6个成员,早期的 ELK 架构中使用 Logstash 收集、解析日志,但是 Logstash内存cpuio 等资源消耗比较高。相比 LogstashBeats 所占系统的 CPU 和内存几乎可以忽略不计。

Beats 有目前七个工具:

  1. Functionbeat 能收集、传送并监测来云服务的相关数据
  2. Packetbeat 网络数据(收集网络流量数据)
  3. Metricbeat:指标(收集系统、进程和文件系统级别的CPU和内存使用情况等数据)
  4. Filebeat:日志文件(收集文件数据)
  5. Winlogbeat:windows事件日志(收集Windows事件日志数据)
  6. Auditbeat:审计数据(收集审计日志)
  7. Heartbeat:运行时间监控(收集系统运行时的数据)

安装filebeat

wget https://mirrors.huaweicloud.com/filebeat/7.6.0/filebeat-7.6.0-linux-x86_64.tar.gz
tar -zxvf filebeat-7.6.0-linux-x86_64.tar.gz

Filebeat输出到文件

  • filebeat.yml
filebeat.inputs:
# 指定文件的输入类型log
- type: log 
  enabled: true
  # 指定要监控的日志,可以指定具体得文件或者目录
  paths:
    - /var/log/test-filebeat.log
# 输出方式 可以以文件输出
output.file:
  path: "/tmp"
  filename: "filebeat.txt"
  • 测试
echo test >> /var/log/test-filebeat.log

查看到输出文件已经有变化了

输出到logstash

  • filebeat.yml
output.logstash:
  hosts: ["192.168.179.124:5044"]
  • logstash配置
input {
    beats {
        port => 5044
    }
}
output {
    elasticsearch {
        hosts => ["192.168.179.124:9200"]        #elasticsearch服务器地址
        user => "elastic"
        password => "${ES_PWD}"
        index => "logstash-filebeat-%{+YYYY.MM.dd}"    #索引名称
    }
}
  • 测试数据
echo hello >> /var/log/test-filebeat.log
  • 查看索引模式

输出到Redis

  • filebeat.yml
output.redis:
  hosts: ["192.168.179.124:6379"]
  key: "test-filebeat"
  db: 0
  timeout: 5
  • 查看连接 redis 日志

  • 查看效果

logstash从redis中读取数据

  • logstash-filebeat.conf 配置 logstash
input {
    redis {
        data_type => "list"
        host => "192.168.179.124"
        port => "6379" 
        db => 0 # 指定库
        key => "test-filebeat" # 配置redis 键
    }
}
output {
    elasticsearch {
        hosts => ["192.168.179.124:9200"]        #elasticsearch服务器地址
        user => "elastic"
        password => "${ES_PWD}"
        index => "logstash-test-%{+YYYY.MM.dd}"    #索引名称
    }
}
  • 启动 logstash
./bin/logstash -f ./conf.d/logstash-filebeat.conf
  • 测试数据
echo test >> /var/log/test-filebeat.log

logstash 会一直从 redis 中获取数据,获取完成会删除掉 redis 的键,我们创建 kibana 的索引模式来查看一下收取的数据

经过这篇文章的理解,我们应该更好的理解 Logstash, 他可以输出地方很多,可以直接输出到 队列ES文件等等,非常轻量和灵活

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
2月前
|
运维 安全 Linux
【揭秘】如何轻松掌控Linux系统命脉?——一场探索日志文件奥秘的旅程,带你洞悉系统背后的故事!
【8月更文挑战第21天】日志文件对Linux系统至关重要,记录着包括应用行为、组件状态和安全事件在内的系统活动,如同系统的“黑匣子”。掌握日志查看技巧是系统管理的基础技能,有助于快速诊断问题。常用命令包括`cat`、`tail`和`grep`等,可用于查看如`/var/log/messages`和`/var/log/auth.log`等系统日志文件,以及特定应用的日志。`journalctl`则用于查看systemd服务日志。此外,`logrotate`工具可管理日志文件的滚动和归档,确保系统高效运行。
38 4
|
2月前
|
存储 数据采集 数据处理
【Flume拓扑揭秘】掌握Flume的四大常用结构,构建强大的日志收集系统!
【8月更文挑战第24天】Apache Flume是一个强大的工具,专为大规模日志数据的收集、聚合及传输设计。其核心架构包括源(Source)、通道(Channel)与接收器(Sink)。Flume支持多样化的拓扑结构以适应不同需求,包括单层、扇入(Fan-in)、扇出(Fan-out)及复杂多层拓扑。单层拓扑简单直观,适用于单一数据流场景;扇入结构集中处理多源头数据;扇出结构则实现数据多目的地分发;复杂多层拓扑提供高度灵活性,适合多层次数据处理。通过灵活配置,Flume能够高效构建各种规模的数据收集系统。
33 0
|
2月前
|
存储 消息中间件 人工智能
AI大模型独角兽 MiniMax 基于阿里云数据库 SelectDB 版内核 Apache Doris 升级日志系统,PB 数据秒级查询响应
早期 MiniMax 基于 Grafana Loki 构建了日志系统,在资源消耗、写入性能及系统稳定性上都面临巨大的挑战。为此 MiniMax 开始寻找全新的日志系统方案,并基于阿里云数据库 SelectDB 版内核 Apache Doris 升级了日志系统,新系统已接入 MiniMax 内部所有业务线日志数据,数据规模为 PB 级, 整体可用性达到 99.9% 以上,10 亿级日志数据的检索速度可实现秒级响应。
AI大模型独角兽 MiniMax 基于阿里云数据库 SelectDB 版内核 Apache Doris 升级日志系统,PB 数据秒级查询响应
|
2月前
|
缓存 NoSQL Linux
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
|
1月前
|
JSON 缓存 fastjson
一行日志引发的系统异常
本文记录了一行日志引发的系统异常以及作者解决问题的思路。
|
7天前
使用装饰器实现自动化日志系统
使用装饰器实现自动化日志系统
10 0
|
2月前
|
存储 监控 数据可视化
在Linux中,如何查看系统日志?
在Linux中,如何查看系统日志?
|
2月前
|
监控 安全 Linux
在Linux中,某个账号登陆linux后,系统会在哪些日志文件中记录相关信息?
在Linux中,某个账号登陆linux后,系统会在哪些日志文件中记录相关信息?
|
2月前
|
运维 监控 Ubuntu
在Linux中,如何查看系统日志文件?
在Linux中,如何查看系统日志文件?
|
2月前
|
数据挖掘 语音技术
3D-Speaker说话人任务的开源项目问题之语义说话人信息模块在说话人日志系统中的问题如何解决
3D-Speaker说话人任务的开源项目问题之语义说话人信息模块在说话人日志系统中的问题如何解决
下一篇
无影云桌面