[发明专利]一种分布式环境下的日志收集系统及日志收集方法在审
申请号: | 202010742719.8 | 申请日: | 2020-07-29 |
公开(公告)号: | CN112003831A | 公开(公告)日: | 2020-11-27 |
发明(设计)人: | 陈龙飞;朱水平;杨文澜 | 申请(专利权)人: | 苏州玩蜂软件科技有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;G06F16/18 |
代理公司: | 南京苏科专利代理有限责任公司 32102 | 代理人: | 姚姣阳 |
地址: | 215000 江苏省*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 环境 日志 收集 系统 方法 | ||
1.一种分布式环境下的日志收集系统,其特征在于,包括:
用户请求接收模块,用于接收来自用户的服务请求、生成对应的traceID并存入系统线程中,再将所接收到的服务请求向后传递;
业务执行模块,用于接收来自所述用户请求接收模块的服务请求,执行具体的业务操作,对于业务操作过程中的业务日志进行存储和记录;
日志记录模块,用于在服务请求进入所述业务执行模块前以及所述业务执行模块完成业务操作后,记录日志并发布日志消息,对日志消息的框架进行扩展,随后从系统线程中提取traceID并进行传递。
2.根据权利要求1所述的分布式环境下的日志收集系统,其特征在于,所述用户请求接收模块内包括:
跟踪ID生成子模块,用于接收来自用户的服务请求,依据所接收的用户的服务请求生成对应的traceID并存入系统线程的共享变量中;
用户请求拦截子模块,用于依据预设的拦截方式,在针对用户的服务请求生成traceID时对其他的服务请求进行拦截。
3.根据权利要求1所述的分布式环境下的日志收集系统,其特征在于,所述日志记录模块内包括:
日志格式定义子模块,用于对日志消息的格式及日志消息的框架进行定义和指定;
日志消息处理子模块,用于获取日志消息并进行相应的判断处理操作,聚合分析后对结果进行展示。
4.一种分布式环境下的日志收集方法,基于如权利要求1~3任一所述的分布式环境下的日志收集系统,其特征在于,包括如下步骤:
S1、用户请求接收模块接收来自用户的服务请求、生成对应的traceID并存入系统线程的共享变量中,再将所接收到的服务请求向后传递;
S2、业务执行模块接收来自所述用户请求接收模块的服务请求,执行具体的业务操作,对于业务操作过程中的业务日志进行存储和记录;
在S1与S2之间以及在S2之后,均还包括一日志记录步骤,所述日志记录步骤如下,
S0、日志记录模块记录日志并发布日志消息,对日志消息的框架进行扩展,随后从系统线程的共享变量中提取traceID并进行传递,获取日志消息并进行相应的判断处理操作。
5.根据权利要求4所述的分布式环境下的日志收集方法,其特征在于:S1中所述的traceID的生成方式为UUID或随机数。
6.根据权利要求4所述的分布式环境下的日志收集方法,其特征在于,所述日志记录步骤具体包括:
S01、日志格式定义子模块对日志消息的格式及日志消息的框架进行定义和指定,随后日志消息处理子模块对日志进行记录并发布日志消息;
S02、获取日志消息、扩展日志消息的框架,随后从系统线程的共享变量中提取traceID进行传递;
S03、使用redis或kafka对日志进行暂存,若暂存区处于不可用状态,则将所有日志写入磁盘并发出警告信号,待暂存区恢复后,手动触发磁盘内的日志并重新写入;
S04、使用redis或kafka对日志进行实时消费,判断是否达到批量消费的条件及是否出现消费异常,若出现消费异常,则等待后再试,若超过尝试次数则手动写入日志;
S05、利用接口对Elasticsearch进行聚合分析,以网页、图表的形式对操作结果进行展示并提供查询。
7.根据权利要求6所述的分布式环境下的日志收集方法,其特征在于:S02中所述扩展日志消息的框架的工具为logback或log4j2或log4j,所述扩展日志消息的方式为自定义Appender。
8.根据权利要求6所述的分布式环境下的日志收集方法,其特征在于:S02中在进行日志输出时全程采用异步方式。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州玩蜂软件科技有限公司,未经苏州玩蜂软件科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010742719.8/1.html,转载请声明来源钻瓜专利网。