分布式ELK日志采集系统

文章目录

            • 1. 传统日志采集存在哪些优缺点
            • 2. Elk采集日志的原理
            • 3. 为什么需要将日志存储在ElasticSeach 而不是mysql中呢
            • 4. 为什么需要使用elk+kafka
            • 5. elk+kafka原理
            • 6. elk+kafka 环境的构建
            • 7. SpingBoot 整合 kafka Elk

1.传统日志采集存在哪些问题
2.分布式日志采集有哪些方案
3.ElasticSeach+Logstash+Kibana作用
4.ELK为何需要结合kafka
5.基于docker构建ELK
6.springboot项目整合elk实现异步日志采集

1. 传统日志采集存在哪些优缺点

在传统项目中,如果在生产环境中,有多台不同的服务器集群,如果生产环境需要通过日志定位项目的Bug的话,需要在每台节点上使用传统的命令方式查询,这样效率非常低下。因此我们需要集中化的管理日志,ELK则应运而生。
在这里插入图片描述

2. Elk采集日志的原理

Elk
E=ElasticSeach(存储日志信息)
l Logstash(搬运工)
K Kibana连接到我们ElasticSeach图形化界面查询日志

    Elk采集日志的原理:
1.	需要在每个服务器上安装Logstash(搬运工)
2.	Logstash需要配置固定读取某个日志文件
3.	Logstash将我们的日志文件格式化为json的格式输出到es中
4.	开发者使用Kibana连接到ElasticSeach 查询存储日志内容。

ELK日志收集原理
ELK=ElasticSeach+Logstash+Kibana,日志收集原理如下所示。
1、每台服务器集群节点安装Logstash日志收集系统插件
2、每台服务器节点将日志输入到Logstash中
3、Logstash将该日志格式化为json格式,根据每天创建不同的索引,输出到ElasticSearch中
4、浏览器使用安装Kibana查询日志信息
在这里插入图片描述

该方案的缺点:就是在每个服务器节点上都会安装Logstash做读写日志IO操作,可能性能不是很好,而且比较冗余。

3. 为什么需要将日志存储在ElasticSeach 而不是mysql中呢

ElasticSeach 底层使用到倒排索引 搜索日志效率高

4. 为什么需要使用elk+kafka

1.如果单纯的使用elk的话,服务器节点扩容 需要每个服务器上安装我们Logstash
步骤比较冗余。
2. Logstash读取本地日志文件,可能会对本地的磁盘io性能会有一定影响。

5. elk+kafka原理
  1. springboot项目会基于aop的方式拦截系统中日志
    日志(错误日志)
    错误日志:异常通知
    请求与响应日志信息—前置或者环绕通知。
  2. 将该日志投递到我们kafka中 注意该过程一定要是异步的形式。
  3. Logstash 数据源—kafka 订阅kafka的主题 获取日志消息内容
  4. 在将日志消息内容输出到es中存放
    开发者使用Kibana连接到ElasticSeach 查询存储日志内容。

在这里插入图片描述

6. elk+kafka 环境的构建

https://gblfy.blog.csdn.net/article/details/123433995

7. SpingBoot 整合 kafka Elk

https://gblfy.blog.csdn.net/article/details/123434785

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/515906.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从零入门 Serverless | 架构的演进

作者 | 许晓斌 阿里云高级技术专家 本文整理自《Serverless 技术公开课》第 1 讲,点击开始学习。 关注 “Serverless” 公众号,回复 入门 ,即可获取 Serverless 系列文章 PPT。 传统单体应用架构 十多年前主流的应用架构都是单体应用&…

如何使用 Istio 进行多集群部署管理:多控制平面

作者 | 王夕宁 阿里云高级技术专家 导读:本文摘自于阿里云高级技术专家王夕宁撰写的《Istio 服务网格技术解析与实战》一书,讲述了如何使用 Istio 进行多集群部署管理来阐述服务网格对多云环境、多集群即混合部署的支持能力。 前文详情: …

@Transactional 事务失效记录

代码调用结构: Transactional public ReturnBo saveBase(BaseBo bo){ServiceA.dbMethodA();ServiceB.dbMethodB();ServiceC.dbMethodC(); }异常现象: 在saveBase方法中,如果 ServiceB.dbMethodB()方法实现中出现了异常,Servic…

JDK8新特性入门到精通

文章目录一、 接口中默认方法修饰为普通方法1. 在jdk8之前2. 在JDK 1.8开始3. 案例演练二、Lambda表达式2.1. 什么是Lambda表达式2.2. 为什么要使用Lambda表达式2.3. Lambda表达式的规范2.4. 函数接口定义2.5. Lambda基础语法2.6. 方法引入2.7. Lambda实战案例三、java 8 strea…

一文聊“图”,从图数据库到知识图谱

作者 | 穆琼责编 | 晋兆雨头图 | 付费下载于视觉中国随着知识图谱的发展,图数据库一词被越来越多的提到。那么到底什么是图数据库,为什么要用图数据库,如何去建设一个图数据库应用系统,图数据库与知识图谱到底是什么关系。今天为大…

阿里云机器学习PAI DSW 2.0 Alink商业版重磅发布

DSW 2.0:面向AI研发的集成开发平台 DSW(Data Science Workshop)是阿里巴巴PAI团队根据多年的AI算法和产品研发经验积累,围绕提高AI算法研发效率,降低研发成本而推出的一款适用于各类AI开发者的云端机器学习集成开发环…

Java反射自定义注解底层设计原理

文章目录一、反射1. 反射概念2. 反射机制的优缺点3. 反射的用途4. 反射技术的使用5. 反射常用的Api6. 反射执行构造函数7. 反射执行给属性赋值8. 反射执行调用方法二、注解2.1. 注解概念2.2. 常用注解2.3. 元注解2.4. 常用注解2.5. 注解的Target2.6. 获取注解信息2.7. 注解如何…

DSW:面向AI研发的集成开发平台

发布会传送门 产品详情 云原生技术,注重用户体验,提升研发效率 环境搭建是算法研发过程中的重要一环,这里除了硬件选型外,软件环境的安装配置,后续升级往往会耗费不少时间。DSW借助阿里云ECS,Docker和Ku…

@Builder(toBuilder=true) 链式初始化对象、修改对象

引入lombok&#xff1a; <!--lombok--><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency>实体创建&#xff1a; Data Builder(toBuildertrue)…

程序员应如何理解高并发中的协程

来源 | 码农的荒岛求生责编 | 晋兆雨头图 | 付费下载于视觉中国作为程序员&#xff0c;想必你多多少少听过协程这个词&#xff0c;这项技术近年来越来越多的出现在程序员的视野当中&#xff0c;尤其高性能高并发领域。当你的同学、同事提到协程时如果你的大脑一片空白&#xff…

5G边缘计算行业通识:阿里云ENS技术演进之路

近日&#xff0c;阿里云杨敬宇在CSDN阿里云核心技术竞争力在线峰会上进行了《5G基础设施-阿里云边缘计算的技术演进之路》主题演讲&#xff0c;针对5G时代下&#xff0c;行业和技术的趋势、边缘计算产业通识以及阿里云边缘计算从过去到未来的技术演进之路进行分享。 5GAI需求推…

精讲23种设计模式-策略模式~聚合短信服务和聚合支付服务

文章目录一、设计模式1. 为什么需要使用设计模式2. 设计模式的分类3. 什么是策略模式4. 为什么叫做策略模式5. 策略模式优缺点6. 策略模式应用场景7. Spring框架中使用的策略模式二、策略模式~聚合短信服务2.1. 依赖引入2.2. 抽象公共行为接口2.3. 具体策略接口实现类2.4. 策略…

引领开源新风潮,阿里巴巴编程之夏第二期重磅来袭!

“唯有热爱&#xff0c;可抵岁月漫长”。 2020 年 5 月 25 日&#xff0c;阿里巴巴编程之夏&#xff08;Alibaba Summer of Code&#xff0c;以下简称 ASoC &#xff09;第二期正式上线&#xff0c;项目规模再度升级&#xff0c;来自开源社区的 Apache Dubbo、Apache RocketMQ…

powerdesigner逆向工程(sql转pdm)

第一步&#xff1a; File -> Reverse Engineer -> Database 第二步 &#xff1a; Using Script Files -> Add Files

安谋中国发布“玲珑”i3i5 ISP处理器,剑指何方?

随着图像视频处理技术的发展和 5G 时代的来临&#xff0c;除了社交等平台外&#xff0c;以图像、视频为载体的内容渗透到各领域&#xff0c;特别是智能安防、AIoT、智能汽车等新兴领域应用。与此同时&#xff0c;人们对其清晰度、图像分辨率有新的扩展需求&#xff0c;对摄像头…

凯度信息之美奖揭晓,数据可视化后有多“性感”?

前言&#xff1a;更多关于数智化转型、数据中台内容可扫码加群一起探讨 阿里云数据中台官网 https://dp.alibaba.com/index &#xff08;作者&#xff1a;常成&#xff09; 2019年的“凯度信息之美奖”揭晓了&#xff0c;有很多很有意思的信息可视化作品。很多作品看到的时候…

精讲23种设计模式-基于责任链模式~构建企业级风控系统

文章目录一、责任链1. 责任链基本概念2. 定义3. 关键要点4. 责任链模式优缺点5. 责任链模式类结构图6. 网关权限控制责任链模式二、构建企业级风控系统2.1. 定义公共抽象任务2.2. (失信名单)校验处理类2.3. (信用卡)逾期处理类2.4. (蚂蚁信用积分)处理类2.5. 责任链工厂(第一种…

mybatis报错:Could not find result map java.lang.Integer

异常原因&#xff1a; 返回值为Integer的语句&#xff0c;本应该是&#xff1a; resultType"java.lang.Integer"//正确写的是&#xff1a; resultMap"java.lang.Integer"//错误最坑的是别人的mapper写错&#xff0c;会影响全局哦&#xff0c;不一定是你…

说一说阿里云弹性公网IP那些事

弹性公网IP是独立的公网IP资源&#xff0c;可以绑定到阿里云专有网络VPC类型的ECS、NAT网关、私网负载均衡SLB上&#xff0c;并可以动态解绑&#xff0c;实现公网IP和ECS、NAT网关、SLB的解耦&#xff0c;满足灵活管理的要求。 弹性公网IP作为一种网络基础能力&#xff0c;也是…