一种基于日志快速定位业务故障的方法

文档序号:9814015阅读:227来源:国知局
一种基于日志快速定位业务故障的方法
【技术领域】
[0001 ]本发明涉及一种业务故障的定位方法,尤其涉及一种基于日志快速定位业务故障的方法。
【背景技术】
[0002]网络设备、系统及服务程序等,在运作时都会产生一个叫做log的时间记录;每一行日志都记载着日期、时间、使用者及动作等相关操作的描述。定位故障时需要查看处理业务请求的日志,在一定规模的架构中每天设备、系统、应用程序等产生的日志量以亿做单位计算,面对如此庞大的信息量,在故障排查、瓶颈分析、安全审计时着实费时费力。
[0003]由于日志分布在系统不同应用程序、不同存储路径,没有形成有效的收集。同时针对业务故障类型及故障发生时间需要进行特定的筛选,对于日志量巨大、刷新频繁的应用日志,没有特殊的关联信息难以确定有效日志信息。
[0004]为了优化业务瓶颈,需要对比系统中各应用模块在一定周期处理业务请求的响应速度,处理时间。但是目前收集一定时间内日志必须手动汇总存储于不同应用程序、不同路径的日志,以日志类型为玮度筛选该日志类型的响应速度,处理时间再对比不同周期中该日志类型数据。
[0005]由上可见,现有技术具有如下缺点:1、分布在系统不同应用程序、不同存储路径的日志,没有特定关键信息难以关联特定业务类型日志;2、系统日志量巨大,刷新频繁,没有形成有效的汇聚点;3、以日志类型为玮度筛选业务请求的响应速度、处理时间,耗费时间大。为了解决通过日志排查及瓶颈分析时所浪费的大量时间,有必要对现有的基于日志定位业务故障的方法进行改进。

【发明内容】

[0006]本发明所要解决的技术问题是提供一种基于日志快速定位业务故障的方法,能够方便准确地将各个日志进行关联,实现对多模块、多系统的海量日志信息的关联分析,快速准确地定位业务故障,解决现有技术方案日志信息匹配难、无法关联分析的难题。
[0007]本发明为解决上述技术问题而采用的技术方案是提供一种基于日志快速定位业务故障的方法,包括如下步骤:a)对客户在前端操作的第一个业务请求中增加跟踪ID;b)当网络设备、服务器及应用程序收到具有跟踪ID的业务请求后,经过处理后产生的新请求或回复都将增加该跟踪ID,并在日志中记录该跟踪ID;c)通过搜索具有跟踪ID的日志定位业务故障。
[0008]上述的基于日志快速定位业务故障的方法,其中,所述跟踪ID包含客户ID、请求时间以及业务类型。
[0009]上述的基于日志快速定位业务故障的方法,其中,所述跟踪ID中由请求时间、客户ID、业务类型以及请求次数组成。
[0010]上述的基于日志快速定位业务故障的方法,其中,所述步骤a)中产生的前端请求通过网络设备分发到后端的资源调度系统、网络系统、数据库以及各业务模块,并在对应模块的日志上记录唯一的跟踪ID,所述步骤c)配合日志集中管理工具,将前端产生的跟踪ID作为关键字进行搜索,列出与该跟踪ID相关联的前端及后端的所有相关日志实现业务故障快速查看定位。
[0011]上述的基于日志快速定位业务故障的方法,其中,所述步骤C)还包括根据跟踪ID监控不同类型客户日志行为情况,收集、汇总、分析各类型业务日志当中各模块处理请求所耗的时间,得出系统业务的性能瓶颈。
[0012]本发明对比现有技术有如下的有益效果:本发明提供的基于日志快速定位业务故障的方法,通过设置跟踪ID把各模块中需要的业务日志串联在一起,实现对多模块、多系统的海量日志信息进行关联分析,快速准确地定位业务故障,解决现有技术方案日志信息匹配难、无法关联分析的难题。此外,本发明通过设置特定跟踪ID并利用其中的客户ID、请求时间、业务类型,使得统计出来的信息能快速定位故障并优化业务性能。
【附图说明】
[0013]图1为本发明基于日志快速定位业务故障的流程示意图。
【具体实施方式】
[0014]下面结合附图和实施例对本发明作进一步的描述。
[0015]图1为本发明基于日志快速定位业务故障的流程示意图。
[0016]请参见图1,本发明提供的基于日志快速定位业务故障的方法,包括如下步骤:
[0017]步骤S1:对客户在前端操作的第一个业务请求中增加跟踪ID;所述跟踪ID包含客户ID、请求时间以及业务类型,具体可由请求时间、客户ID、业务类型以及请求次数组成;具体跟踪ID以空格隔离,时间、客户ID、业务类型、请求次数组成,具体事例如下:
[0018][2015-03-12 14:29:32][TracelD][201503121429323215 2077037 4263 I][INFO][接口 ] [describeInstances][响应结果]〈describeInstancesResponse〉;
[0019]步骤S2:当网络设备、服务器及应用程序收到具有跟踪ID的业务请求后,经过处理后产生的新请求或回复都将增加该跟踪ID,并在日志中记录该跟踪ID;
[0020]步骤S3:通过搜索具有跟踪ID的日志定位业务故障。
[0021]本发明通过将客户在前端操作的第一个业务请求注入特殊定制的跟踪ID,该请求到达网络设备、服务器、应用程序经过处理后产生的新请求或回复都将注入这个跟踪ID,SP请求的发出到最后收到的回复所经过的网络设备、服务器、应用程序的日志都会具有该跟踪ID;再利用可视化的技术将带有该跟踪ID的日志展示出来,从而大大节约故障排查、瓶颈分析、安全审计的时间。
[0022]通过本发明可以收集存储于日志系统的海量日志能按照用户、业务类型、系统类型进行区分,利用可视化图形技术以用户、业务类型、跟踪ID为玮度制定可视化的面板,实现对用户业务流转的全程监控。
[0023]现有常规的前端应用所产生的日志,例如tomcat、apache、nginx日志中会打印每个请求的产生时间,请求类型(业务类型),基于现有技术的打印模式可将客户信息(每个客户拥有特定ID),该客户产生该请求的次数组成一个特殊的字段,根据以上的四个组成部分(请求时间、客户ID、业务类型、请求次数)构成本发明的跟踪ID。跟踪ID写入日志中实际上就是定制更改程序写日志的格式及内容,而现有场景中能够产生客户相关信息的程序只有前端应用,前端的开发与后端开发一般各自为政,关注的点在于各自程序是否能产出自己想要的日志,忽略前端与后端的关联性,而跟踪ID在这里就提供了很好的枢纽。
[0024]以公有云为例,前端某客户同时产生10个创建云主机的请求,其中三台云主机创建失败,现有技术排查手段是从前端程序日志着手,检查请求是否生成,接着排查后端,后端指的是创建云主机涉及的模块,例如网络系统,资源调度系统,数据库等等进行排查,加之后端模块间的交互各自产生自己独立一套的日志,毫无关联性,令排查难度加大。使用跟踪ID后,关联性问题被很好的解决了,前端的请求分发到后端的资源调度系统,网络系统,数据库等等,或者再多的模块,唯一的跟踪ID都会打印在对应模块的日志上,配合日志集中管理的工具,只要将前端产生的跟踪ID作为关键字进行搜索,前端及复杂的后端相关日志都会列出来,大大降低排查的难度。而跟踪ID的唯一性还提供了十分优秀的过滤功能,因为跟踪ID中组成的时间(日志时间精确到纳秒,程序反应时间不会有此速度)提供了很好的唯一性,当然还有请求类型,上述创建失败的三台云主机,从前端日志中获取其跟踪ID,分别搜索出对应日志,逐一排查其故障原因。从现有技术与本发明提出的跟踪ID中可得出,在前端产生请求,到流转经过后端的各模块所产生的日志量种类及内容非常多,只有在各模块之间增加关联性才能非常有效地处理各种问题。
[0025]综上所述,本发明通过设置跟踪ID把各模块中需要的业务日志串联在一起,再者根据跟踪ID中客户ID、请求时间、业务类型,统计出来的信息能快速故障、优化业务、调整性能。具体优点如下:1、根据跟踪ID,准确定位客户在某时刻操作的全部日志,提高分析日志的精准度;2、根据跟踪ID,节省大量从各应用中筛选某类型业务日志的时间,降低优化业务流程的耗费时间;3、根据跟踪ID,监控不同类型客户日志行为情况,从而优化产品不足,提高客户满意度;4、根据跟踪ID,关联业务日志链,方便定位故障发生所属模块,提高处理故障速度;5、收集、汇总、分析各类型业务日志当中模块处理请求所耗的时间,能够得出架构随业务发展各模块性能瓶颈。
[0026]虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的修改和完善,因此本发明的保护范围当以权利要求书所界定的为准。
【主权项】
1.一种基于日志快速定位业务故障的方法,其特征在于,包括如下步骤: a)对客户在前端操作的第一个业务请求中增加跟踪ID; b)当网络设备、服务器及应用程序收到具有跟踪ID的业务请求后,经过处理后产生的新请求或回复都将增加该跟踪ID,并在日志中记录该跟踪ID; c)通过搜索具有跟踪ID的日志定位业务故障。2.如权利要求1所述的基于日志快速定位业务故障的方法,其特征在于,所述跟踪ID包含客户ID、请求时间以及业务类型。3.如权利要求2所述的基于日志快速定位业务故障的方法,其特征在于,所述跟踪ID中由请求时间、客户ID、业务类型以及请求次数组成。4.如权利要求1所述的基于日志快速定位业务故障的方法,其特征在于,所述步骤a)中产生的前端请求通过网络设备分发到后端的资源调度系统、网络系统、数据库以及各业务模块,并在对应模块的日志上记录唯一的跟踪ID,所述步骤c)配合日志集中管理工具,将前端产生的跟踪ID作为关键字进行搜索,列出与该跟踪ID相关联的前端及后端的所有相关日志实现业务故障快速查看定位。5.如权利要求4所述的基于日志快速定位业务故障的方法,其特征在于,所述步骤c)还包括根据跟踪ID监控不同类型客户日志行为情况,收集、汇总、分析各类型业务日志当中各模块处理请求所耗的时间,得出系统业务的性能瓶颈。
【专利摘要】本发明公开了一种基于日志快速定位业务故障的方法,包括如下步骤:a)对客户在前端操作的第一个业务请求中增加跟踪ID;b)当网络设备、服务器及应用程序收到具有跟踪ID的业务请求后,经过处理后产生的新请求或回复都将增加该跟踪ID,并在日志中记录该跟踪ID;c)通过搜索具有跟踪ID的日志定位业务故障。本发明通过设置跟踪ID把各模块中需要的业务日志串联在一起,实现对多模块、多系统的海量日志信息进行关联分析,快速准确地定位业务故障,解决现有日志信息匹配难、无法关联分析的难题;此外,本发明通过设置特定跟踪ID并利用其中的客户ID、请求时间、业务类型,使得统计出来的信息能快速定位故障并优化业务性能。
【IPC分类】H04L12/24
【公开号】CN105577454
【申请号】CN201610119429
【发明人】程永新, 胡永, 叶焕荣
【申请人】上海新炬网络信息技术有限公司
【公开日】2016年5月11日
【申请日】2016年3月3日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1