基于日志增强实现全局业务监控的方法技术

技术编号:28941570 阅读:36 留言:0更新日期:2021-06-18 21:46
本发明专利技术公开了一种基于日志增强实现全局业务监控的方法,包括如下步骤:S1:在应用性能监控程序中配置Java日志增强文件,改进探针为日志增强探针;S2:采用步骤S1中的应用性能监控程序监控应用系统;S3:在被监控应用系统启动时,应用性能监控系统将日志增强探针置入到被监控应用系统;S4:日志平台收集被监控系统产生的增强日志;S5:日志平台整理增强日志,将业务数据与性能数据进行相关联的展现。本发明专利技术基于Java字节码技术,增强日志输出框架,在输出日志时添加用户ID,Url等业务相关数据,通过日志平台收集日志数据后,将性能数据与业务数据进行关联性的输出,进而通过页面将性能数据以业务角度进行展现。

【技术实现步骤摘要】
基于日志增强实现全局业务监控的方法
本专利技术涉及一种业务监控方法,尤其涉及一种基于日志增强实现全局业务监控的方法。
技术介绍
随着互联网的普及,越来越多的业务开始通过互联网进行,逐渐增多的用户也给应用的性能带来极大的考验,因此应用架构也设计的越来复杂,应用系统的性能监控也变得越发重要起来,毕竟用户在性能较差的业务系统上办理业务时体验极差,且极大的影响办理的效率。最初的性能监控方案只能是通过拨测和用户的个人感受进行监控,这种方式容易受用户主观意识及网络状况的影响,对于应用的性能反馈不够客观、准确、及时。因此催生了如Pinpoint,SkyWalking这一类应用性能监控系统,其通过Java语言本身具有的类增强机制在应用启动时植入探针,采集应用响应时间,吞吐量,sql执行时间,外部调用耗时以及应用本身内存及CPU使用情况等性能数据,通过网络发送到服务端进行整理与展现,使得应用性能的监控可以通过图形化形式进行更直观的展现,方便系统管理及运维人员及时了解应用的性能状况。现有应用监控系统的缺点是:1.应用性能的监控展现的性能数据过于技术化,不便于用户理解,无法从业务角度对应用性能进行监控;2.现有的日志中普遍缺失业务相关信息,要在应用性能监控中通过修改代码获取业务相关信息,工作量较大。因此,现有技术还有待改进。
技术实现思路
本专利技术要解决的技术问题是提供一种基于日志增强实现全局业务监控的方法,在传统应用性能监控系统探针的基础上,通过增强日志框架相关类,在原本输出的日志内容中添加业务相关信息,从业务的角度实现全局监控。本专利技术为解决上述技术问题而采用的技术方案是提供一种基于日志增强实现全局业务监控的方法,包括如下步骤:S1:在应用性能监控程序中配置Java日志增强文件,改进探针为日志增强探针;S2:采用步骤S1中的应用性能监控程序监控应用系统;S3:在被监控应用系统启动时,应用性能监控系统将日志增强探针置入到被监控应用系统;S4:日志平台收集被监控系统产生的增强日志;S5:日志平台整理增强日志,将业务数据与性能数据进行相关联的展现。进一步地,所述步骤S1中应用性能监控程序采用SkyWalking,在Java日志增强文件中添加需要采集的业务数据,并将业务数据与性能数据进行关联。进一步地,所述Java日志增强文件为class文件,根据需要采集的业务数据以及业务数据与性能数据的关联关系编写Java代码,通过Java编译器将代码编译成Java虚拟机需要的class文件。进一步地,所述步骤S3中应用性能监控系统将日志增强探针置入到被监控应用系统,即将Java日志增强文件的class文件加载到被监控应用系统,class文件依次通过类装载器装载、字节码校验器校验以及解释器解释后加载到被监控应用系统的内存空间并运行。进一步地,所述被监控应用系统加载class文件后,根据class文件需要采集的业务数据以及业务数据与性能数据的关联关系动态修改日志生成文件,改变日志生成文件代码逻辑增加业务数据采集以及业务数据与性能数据的关联逻辑,使得生成的增强日志中包含业务数据以及业务数据与性能数据的关联关系。进一步地,所述步骤S4还包括日志平台将采集的日志数据按照正则表达式切割模板进行数据清洗后,通过ElasticSearch提供的API进行日志数据的搜索与存储;根据业务类型,整理得到各个业务场景的查询语句,并形成通过日志关键字、报表和用户行为进行查询的业务数据查询单元。进一步地,所述步骤S5中日志平台的展示页面设有查询入口,所述查询入口调用业务数据查询单元,通过ElasticSearch搜索引擎进行业务性能状态查询。本专利技术对比现有技术有如下的有益效果:本专利技术提供的基于日志增强实现全局业务监控的方法,基于Java字节码技术,增强日志输出框架,在输出日志时添加用户ID,Url等业务相关数据,通过日志平台收集日志数据后,将性能数据与业务数据进行关联性的输出,进而通过页面将性能数据以业务角度进行展现,使得业务的性能的可以通过图形化形式进行更直观的展现,方便用户和运维人员及时了解应用的性能状况。附图说明图1为本专利技术实施例中基于日志增强实现全局业务监控的方法流程图;图2为本专利技术实施例中基于日志增强实现全局业务监控的方法架构图;图3为本专利技术实施例中日志增强探针加载流程图。具体实施方式下面结合附图和实施例对本专利技术作进一步的描述。图1为本专利技术实施例中基于日志增强实现全局业务监控的方法流程图;图2为本专利技术实施例中基于日志增强实现全局业务监控的方法架构图。请参见图1和图2,本专利技术实施例的基于日志增强实现全局业务监控的方法,包括如下步骤:S1:在应用性能监控程序中配置Java日志增强文件,改进探针为日志增强探针;S2:采用步骤S1中的应用性能监控程序监控应用系统;S3:在被监控应用系统启动时,应用性能监控系统将日志增强探针置入到被监控应用系统;S4:日志平台收集被监控系统产生的增强日志;日志平台将采集的日志数据按照正则表达式切割模板进行数据清洗后,通过ElasticSearch提供的API进行日志数据的搜索与存储;根据业务类型,整理得到各个业务场景的查询语句,并形成通过日志关键字、报表和用户行为进行查询的业务数据查询单元。S5:日志平台整理增强日志,将业务数据与性能数据进行相关联的展现。具体地,应用性能监控程序采用SkyWalking,在Java日志增强文件中添加需要采集的业务数据,并将业务数据与性能数据进行关联。SkyWalkingAPM工具,包括了分布式追踪、性能指标分析、应用和服务依赖分析等。SkyWalking的核心是数据分析和度量结果的存储平台,通过HTTP或GRPC方式向SkyWalkingCollecter提交分析和度量数据,SkyWalking支持从多个来源和多种格式收集数据:多种语言的SkyWalkingAgent、Zipkinv1/v2、Istio勘测、Envoy度量等数据格式。日志增强的探针选用SkyWalking的原因一是根据对比,其性能消耗较小,也即对应用影响较低,百分之三以内,几乎可忽略。另外其本身支持ElasticSearch进行存储,与大多数日志系统的存储方案一致,方便进行数据存储,且查询效率较高。日志平台的展示页面设有查询入口,所述查询入口调用业务数据查询单元,通过ElasticSearch搜索引擎进行业务性能状态查询。ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RestfulWeb接口。ElasticSearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。根据DB-Engines的排名显示,ElasticSearch是最受欢迎的企业搜索引擎。基于El本文档来自技高网...

【技术保护点】
1.一种基于日志增强实现全局业务监控的方法,其特征在于,包括如下步骤:/nS1:在应用性能监控程序中配置Java日志增强文件,改进探针为日志增强探针;/nS2:采用步骤S1中的应用性能监控程序监控应用系统;/nS3:在被监控应用系统启动时,应用性能监控系统将日志增强探针置入到被监控应用系统;/nS4:日志平台收集被监控系统产生的增强日志;/nS5:日志平台整理增强日志,将业务数据与性能数据进行相关联的展现。/n

【技术特征摘要】
1.一种基于日志增强实现全局业务监控的方法,其特征在于,包括如下步骤:
S1:在应用性能监控程序中配置Java日志增强文件,改进探针为日志增强探针;
S2:采用步骤S1中的应用性能监控程序监控应用系统;
S3:在被监控应用系统启动时,应用性能监控系统将日志增强探针置入到被监控应用系统;
S4:日志平台收集被监控系统产生的增强日志;
S5:日志平台整理增强日志,将业务数据与性能数据进行相关联的展现。


2.如权利要求1所述的基于日志增强实现全局业务监控的方法,其特征在于,所述步骤S1中应用性能监控程序采用SkyWalking,在Java日志增强文件中添加需要采集的业务数据,并将业务数据与性能数据进行关联。


3.如权利要求2所述的基于日志增强实现全局业务监控的方法,其特征在于,所述Java日志增强文件为class文件,根据需要采集的业务数据以及业务数据与性能数据的关联关系编写Java代码,通过Java编译器将代码编译成Java虚拟机需要的class文件。


4.如权利要求3所述的基于日志增强实现全局业务监控的方法,其特征在于,所述步骤S3中应用性能监控系统将日志增强探针置入到被监控应用系统,即将Java...

【专利技术属性】
技术研发人员:程永新宋辉朱荣鹏
申请(专利权)人:上海新炬网络技术有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1