性能优化分析Spring Cloud ELK+kafka日志分析平台

一、概述
在笔者的上一篇博客介绍了Spring Cloud ELK+kafka日志分析平台的搭建,http://xuyangyang.club/articles/2018/05/24/1527176074152.html,但是笔者在测试环境中发现,在logstash采用了grok插件去处理日志埋点和解析的时候发现了高资源占用,在阿里云8核16G的服务器部署后,测试环境大概每秒不超过几百条的日志的解析下竟然CPU占用高达95%左右,笔者分析了其中的原因,首先由于几个服务的日志格式相关配置还没有落地导致了日志格式无法解析和解析慢,其次grok天生解析正则表达式非常耗CPU。在笔者分析原因后立马进行了改造,将无法解析的格式不做任何处理直接输出到elasticsearch,另外多起了同一个group的基于kafka的logstash去消费日志,发现CPU占用虽然降低了,但任然在高达70%的CPU占用,这使得笔者不得不放弃原先的logstash插件grok,采用了ruby来解析日志和处理日志埋点,并且这次同时对docker启动shell脚本做相应修改,原先由于书写filter导致脚本杂乱无法查看改为启动传入配置文件的方式。
二、改造logstash
本次主要的问题主要发生在logstash的grok插件,在笔者查阅相关资料中发现,logstash提供了grok、mutate、ruby、json等等多种filter插件,由于我们的日志非表中的json格式,所以放弃了测试json插件,而笔者在ruby插件的介绍中发现官方对其颇为称赞,它支持ruby语法,对一些字符串、循环、判断能更方便,并且可以操作event对象(其实就是logstash对象),所以笔者采用了ruby插件。以下为笔者所写的logstash配置文件示例:

原文地址:https://www.cnblogs.com/java8899/p/11755985.html

时间: 2024-10-12 05:42:53

性能优化分析Spring Cloud ELK+kafka日志分析平台的相关文章

ELK统一日志管理平台第三篇-logstash grok插件的使用

1. ELK统一日志管理平台第三篇-logstash grok插件的使用   在本篇博文中,主要讲解如下几个知识点和实践经验,供大家参考:   1. 关于JAVA应用程序的日志内容标准规范:   2. 如何使用logstash的grok插件来完成message字段的拆分:   3. 定时删除Es的索引: 1. 关于JAVA应用程序的日志内容标准规范:   最近公司一直在主推ELK这个项目,而我是ELK这个项目的运维人员.所以针对ELK项目会有很多经验输出:由于我们公司的业务系统以JAVA语言开发

离线部署ELK+kafka日志管理系统

1.简介 对于日志来说,最常见的需求就是收集.查询.显示,正对应logstash.elasticsearch.kibana的功能. ELK日志系统在系统中,主要可解决的问题: 基于日志的数据挖掘 问题排查,上线检查 根据关键字查询日志详情 异常数据自动触发消息通知 服务器监控,应用监控,Bug管理 统计分析,比如接口的调用次数.执行时间.成功率等 性能分析,用户行为分析,安全漏洞分析,时间管理 Logstash: Logstash是一个用来搜集.分析.过滤日志的工具.它支持几乎任何类型的日志,包

ELK - 实用日志分析系统

目前日志分析系统用的越来越广泛,而且最主流的技术即ELK,下面和大家分享一下: --------------------------------------------------------------------------------------- 一:简 介  Elastic Stack 是 原 ELK Stack 在 5.0 版本加入 Beats 套件后的新称呼,近两年飞速崛起,成为开源界机器数据分析和日志处理第一选择. 组成: kibana:开源工具,为 EL 提供友好的 Web 界

ELK Stack 日志分析 Elasticsearch搜索权限

视频下载地址:链接:http://pan.baidu.com/s/1jItWoYy 密码:t6cj 这几年国内运维都在不断完善运维自动化! 设想,IT运维自动化建设完成之后,那下一步怎么走? 我可以很负责的告诉你,接下来必将是智能运维的时代!!! 智能运维,是在IT信息化建设完善的前提下的一种新运维模式! 它依靠的是 实时的大数据分析平台 + 完善的数据分析策略 它的作用就是 -- 能在运维故障发生之前就预测报警! 如此高大上,如此前沿的技术,大家一定要把握住 二话不说,提前学习! ELK就是智

(一)spring cloud互联网分布式微服务云平台规划分析--spring cloud平台整体规

导语 近期公司孵化了一个互联网产品,随着业务发展,产品运营后用户数据量(过亿).业务数据量(过100亿)较大,技术团队配合产品.运营快速定制化开发, 还要考虑产品涉及的资金安全.消息的及时性.业务的制动化处理,我们选择鸿鹄cloud分布式云架构平台作为公司产品核心企业架构. 产品平台规划 微服务注册中心(分布式集群部署).微服务配置中心(分布式集群部署).服务网关平台(分布式集群部署). 微服务监控平台.SSO单点登录平台(分布式集群部署).微服务相关组件(分布式集群部署).后台管理平台. 定时

centos7搭建ELK Cluster日志分析平台(一)

应用场景:ELK实际上是三个工具的集合,ElasticSearch + Logstash + Kibana,这三个工具组合形成了一套实用.易用的监控架构, 很多公司利用它来搭建可视化的海量日志分析平台. 官网下载地址:https://www.elastic.co/downloads  Elasticsearch: 一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口. Elasticsearch是用Java开发的,并作为Apache许可条款

Centos7下ELK+Redis日志分析平台的集群环境部署记录

之前的文档介绍了ELK的架构基础知识,下面简单记录下ELK结合Redis搭建日志分析平台的集群环境部署过程,大致的架构如下: + Elasticsearch是一个分布式搜索分析引擎,稳定.可水平扩展.易于管理是它的主要设计初衷 + Logstash是一个灵活的数据收集.加工和传输的管道软件 + Kibana是一个数据可视化平台,可以通过将数据转化为酷炫而强大的图像而实现与数据的交互将三者的收集加工,存储分析和可视转化整合在一起就形成了ELK. 基本流程:1)Logstash-Shipper获取日

spring cloud分布式使用日志链路跟踪

首先要明白一点,为什么要使用链路跟踪? 当我们微服务之间调用的时候可能会出错,但是我们不知道是哪个服务的问题,这时候就可以通过日志链路跟踪发现哪个服务出错. 它还有一个好处:当我们在企业中,可能每个人都负责一个服务,我们可以通过日志来检查自己所负责的服务不会出错,当调用其它服务时,这时候出现错误,那么就可以判定出不是自己的服务出错,从而也可以发现责任不是自己的. 基于微服务之间的调用开始,如果看不懂的小伙伴,请先参考我上篇博客:spring cloud中微服务之间的调用以及eureka的自我保护

spring cloud互联网分布式微服务云平台规划分析--spring cloud服务监控中心

1.介绍 鸿鹄云架构[服务监控中心]提供简洁的可视化WEB UI,来管理 Spring Cloud 微服务应用程序. 2.平台基础功能 服务在线状态监控.Logging日志级别管理.JMX beans管理.Threads会话和线程管理.Trace应用请求跟踪 应用运行参数信息?更多资源欢迎球911708498 Java 系统属性.Java 环境变量属性.内存信息.Spring 环境属性 Spring Cloud其他组件监控 如:当前处于活跃状态的会话数量.当前应用的并发数.延迟以及其他度量信息.