ELK实现日志收集

1.介绍

ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是开源软件。

Elasticsearch是个开源分布式搜索引擎,提供搜集、分析、存储数据三大功能。它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。

Logstash 主要是用来日志的搜集、分析、过滤日志的工具,支持大量的数据获取方式。一般工作方式为c/s架构,client端安装在需要收集日志的主机上,server端负责将收到的各节点日志进行过滤、修改等操作在一并发往elasticsearch上去。

Kibana

Kibana 也是一个开源和免费的工具,Kibana可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助汇总、分析和搜索重要数据日志。

在当前分布式、微服务架构下,各个应用都部署在不同的服务器上,每个应用都在记录着自己重要或者不重要的日志信息。当我们要通过日志信息来排查错误时,可以根据出错应用在对应的机器上找报错相关的日志信息。但是,可能我们不具有相应服务器的访问权限,也可能相同的应用部署在多台服务器上,导致根本不知道在哪台服务器上找日志。遇到类似这样的尴尬,想要通过日志来排查错误就搞得很麻烦。在这种情况下,ELK 为我们提供了统一的日志管理解决方案,它能很好的支持 Logback 等日志框架,使得我们可以集中的管理不同应用输出的日志信息。

2.ELK集成

使用docker安装ELK,安装手册见:https://note.youdao.com/s/aZ8KGDzY

项目集成Logstash

引入依赖:

xml 复制代码
<dependency>
    <groupId>net.logstash.logback</groupId>
    <artifactId>logstash-logback-encoder</artifactId>
    <version>5.3</version>
</dependency>

配置日志输出配置文件:

3.ELK的使用



相关推荐
fouryears_234179 小时前
@PathVariable与@RequestParam的区别
java·spring·mvc·springboot
菠萝炒饭pineapple-boss1 天前
ElastAlert通过飞书机器人发送报警通知
elk·机器人·飞书
YisquareTech2 天前
ESB 在零售,物流,制造,保险,医疗行业的应用方式
wms·集成·erp·esb·制造业·oms·零售业
飞翔的佩奇2 天前
OpenTelemetry学习笔记(十二):在APM系统中,属性的命名空间处理遵循规则
笔记·学习·springboot·sdk·apm·opentelemetry
rhyme2 天前
源码浅析:SpringBoot main方法结束为什么程序不停止
springboot·markdown·java多线程·源码解析·mermaid
fouryears_234173 天前
Spring MVC 统一响应格式:ResponseBodyAdvice 从浅入深
java·spring·mvc·springboot
666HZ6664 天前
若依框架角色菜单权限
java·spring·springboot
鼠鼠我捏,要死了捏5 天前
Spring Boot中REST与gRPC并存架构设计与性能优化实践指南
springboot·restful·grpc
Britz_Kevin6 天前
从零开始的云计算生活——番外5,使用ELK实现对应用日志的监控
elk·elasticsearch·生活·#logstash·#kibana
元媛媛6 天前
什么是 ELK/Grafana
elk·jenkins·grafana