你们项目日志是如何处理的???

ELK日志采集系统

1.什么是ELK

ELK 是一套流行的数据搜索、分析和可视化解决方案,由三个开源项目组成,每个项目的首字母合起来形成了"ELK"这一术语:

  1. Elasticsearch (ES):

    1. Elasticsearch 是一个基于 Apache Lucene 构建的分布式、实时搜索与分析引擎。它能够索引、搜索和分析大量数据,并且提供了水平扩展能力,允许处理 PB 级别的数据。Elasticsearch 适合用于全文搜索、日志分析、监控指标聚合等多种场景,其 RESTful API 让数据的索引和查询变得非常便捷。
  2. Logstash (LS):

    1. Logstash 是一个动态数据收集管道,用于从各种数据源接收、解析、转换并将数据发送到"stash"(例如 Elasticsearch)。它可以收集来自服务器日志、数据库、应用程序、网络设备等各种源头的日志数据,并对这些数据进行清洗、标准化和丰富,以便于后续分析。
  3. Kibana (KB):

    1. Kibana 是一个开源的数据可视化工具,专为 Elasticsearch 设计,提供了一个用户友好的 Web 界面,使得用户可以轻松地搜索、查看和分析 Elasticsearch 中存储的数据。借助 Kibana,用户可以创建仪表板、图表和其他可视元素,对数据进行深度探索,同时支持实时数据分析和交互式操作。

结合起来,ELK Stack(现在通常称为 Elastic Stack,随着 Beats 等其他组件的加入)为用户提供了一站式的日志管理和分析平台,适用于 IT 监控、安全分析、业务智能等多个领域,能够高效地收集、索引、搜索和展现大规模的日志及监控数据。

2.EFK

在 ELK(Elasticsearch、Logstash、Kibana)堆栈中,Filebeat 通常被用来替代 Logstash 作为日志收集代理,这是因为 Filebeat 相对于 Logstash 来说更为轻量级,资源消耗较小,尤其适合于边缘节点或者资源有限的服务器上收集日志数据。

Filebeat 主要功能如下:

  • 轻量化:Filebeat 专注于日志文件的读取与传输,相对于 Logstash 具有更多的模块化设计和较低的CPU和内存开销。

  • 模块化:Filebeat 提供了预定义的模块来简化日志收集过程,这些模块针对特定类型的应用程序日志进行了优化配置,简化了日志格式解析的过程。

  • 传输:Filebeat 可以直接将收集到的日志数据发送到 Elasticsearch 或者先发送到中间传输层,如 Redis 或 Kafka,然后再由 Logstash 或者其他组件进行进一步处理和索引。

我们采用的是EFK,我们将应用通过docker部署,通过应用的配置文件以及EFK的配置文件(配置单个日志文件的大小通常是100MB,日志留存时间,日志文件的个数等等),指定日志挂载的位置,然后通过FileBeat读取指定目录下的日志文件并将其存到ES中,最后可以通过Kibina绑定ES的索引进行可视化的数据显示。

相关推荐
知行产研22 分钟前
易控智驾:毛利率跃升17.2个百分点,矿山无人驾驶从“规模换增长“迈入“盈利拐点“
数据库·mysql
千里码aicood31 分钟前
基于CART算法的图书分类系统设计与实现
数据库·算法·分类
饺子大魔王的男人1 小时前
Redis 内存和连接异常怎么排查?用 redis_exporter 搭一套可远程抓取的监控链路
数据库·redis·bootstrap
可涵不会debug1 小时前
第一次学 LangGraph:用一个快递案例搞懂 State、Node、Edge 和 compile
服务器·数据库·mysql
liuhl09101 小时前
【无标题】
大数据·elasticsearch·搜索引擎
IvorySQL2 小时前
PostgreSQL 日报 |RLS 机密性绕过漏洞(9 月 27 日)
数据库·postgresql
夕除2 小时前
redis--RDB AOF
数据库·redis·缓存
数据工匠老o2 小时前
"能用应用层解决的不用存储过程",十年数据库经验总结
数据库·架构
AC赳赳老秦2 小时前
公开音频转写信息提取:OpenClaw 处理发布会与听证会文本并提取核心决策信息
大数据·开发语言·汇编·数据库·人工智能·deepseek·openclaw
xbgRS3 小时前
Elasticsearch的查询
elasticsearch