一种基于云原生的组件实现日志采集查询存储方法及系统技术方案

技术编号:37238577 阅读:11 留言:0更新日期:2023-04-20 23:20
本发明专利技术提出了一种基于云原生的组件实现日志采集查询存储方法及系统,涉及日志查询领域。包括获取用户日志查询请求;响应于用户日志查询请求,向多个端设备请求日志数据的采集,其中通过k8s部署容器组件;将多个端设备返回的日志数据转换为统一的数据格式,得到转换后的日志数据,存储结构包括多个流式标签;将转换后的日志数据中属于日志查询请求所请求的查询范围的数据,选择gzip、lz4和snappy三种压缩方式,并且将日志组件与存储组件分离,推送至请求端进行显示;用户通过日志查询界面输入的查询条件。解决了可后台查询日志的技术难度,以及对服务器造成的压力问题。以及对服务器造成的压力问题。以及对服务器造成的压力问题。

【技术实现步骤摘要】
一种基于云原生的组件实现日志采集查询存储方法及系统


[0001]本专利技术涉及日志查询领域,具体而言,涉及一种基于云原生的组件实现日志采集查询存储方法及系统。

技术介绍

[0002]目前,公司对产品生产问题的排查,大多是依靠运维人员在生产上发送命令查询分析,排查过程会对服务器造成较大压力,且对排查问题的人员的技术能力要求较高,造成生产问题的查询分析效率低下。现在百万级用户量的系统,如果后台存储日志采用集中存储,不但存储压力大,查询分析问题如海底捞针,而且日志文件过大会导致文件无法打开。因此,为了解决现有技术的问题,实现查询日志架构的生态化,组件轻量化,部署便捷,降低人工成本和运维成本,需要设计一种基于云原生的组件实现日志采集查询存储方法。

技术实现思路

[0003]本专利技术的目的在于提供一种基于云原生的组件实现日志采集查询存储方法,其能够实现查询日志架构的生态化和组件轻量化,部署便捷,降低了人工和运维成本,解决可后台查询日志的技术难度问题,以及对服务器造成的压力问题,便于研发及运维人员分析问题。
[0004]本专利技术的另一目的在于提供一种基于云原生的组件实现日志采集查询存储系统,其能够实现查询日志架构的生态化和组件轻量化,部署便捷,降低了人工和运维成本,解决可后台查询日志的技术难度问题,以及对服务器造成的压力问题,便于研发及运维人员分析问题。
[0005]本专利技术的实施例是这样实现的:
[0006]第一方面,本申请实施例提供一种基于云原生的组件实现日志采集查询存储方法,其包括如下步骤,S1.获取用户日志查询请求;S2.响应于用户日志查询请求,向多个端设备请求日志数据的采集,其中通过k8s部署容器组件;S3.将多个端设备返回的日志数据转换为统一的数据格式,得到转换后的日志数据,存储结构包括多个流式标签;S4.将转换后的日志数据中属于日志查询请求所请求的查询范围的数据,选择gzip、lz4和snappy三种压缩方式,并且将日志组件与存储组件分离,推送至请求端进行显示;S5.用户通过日志查询界面输入的查询条件,并生成汇总数据;S6.根据上述查询条件,生成查询请求并发送至日志查询系统。
[0007]在本专利技术的一些实施例中,上述步骤S3中,日志数据用于存储包括entries、block、chunk和label解析。
[0008]在本专利技术的一些实施例中,上述步骤S3具体包括如下步骤:S3

1.1entries解析:a)每个entry均是一条单独的日志行;b)一个block包括一系列entries;S3

2.block解析:a)一个block包括多个entries;b)每个entries的元数据记录最小和最大的纳秒级时间戳以及偏移量;S3

3.chunk解析:a)chunk包括多个block,每个block均有唯一个checksum;
S3

4.label解析:a)标签用于描述日志流的元数据,由key

value组成;b)每个标签的key和value组成一个流,任意一个标签的值变化均创建一个新流。
[0009]在本专利技术的一些实施例中,上述步骤S3还包括如下步骤:S3

5.采集json格式数据展示图。
[0010]在本专利技术的一些实施例中,上述步骤S4具体包括如下步骤:S4

1.利用ceph/minio的副本和纠删码机制;S4

2.采用多租户的形式。
[0011]在本专利技术的一些实施例中,上述步骤S5中,所有展示图均可自行调整,可控和可扩展。
[0012]第二方面,本申请实施例提供一种基于云原生的组件实现日志采集查询存储系统,其包括,请求获取模块:获取用户日志查询请求;请求响应模块:响应于用户日志查询请求,向多个端设备请求日志数据的采集,其中通过k8s部署容器组件;格式转换模块:将多个端设备返回的日志数据转换为统一的数据格式,得到转换后的日志数据,存储结构包括多个流式标签;日志推送模块:将转换后的日志数据中属于日志查询请求所请求的查询范围的数据,选择gzip、lz4和snappy三种压缩方式,并且将日志组件与存储组件分离,推送至请求端进行显示;查询汇总模块:用户通过日志查询界面输入的查询条件,并生成汇总数据;请求生成模块:根据上述查询条件,生成查询请求并发送至日志查询系统。
[0013]相对于现有技术,本专利技术的实施例至少具有如下优点或有益效果:
[0014]针对第一方面~第二方面:本申请通过获取用户日志查询请求,响应于用户日志查询请求,向多个端设备请求日志数据进行采集;将多个端设备返回的日志数据转换为统一的数据格式,得到转换后的日志数据,存储结构包括多个流式标签;将转换后的日志数据中属于日志查询请求所请求的查询范围的数据,选择gzip、lz4和snappy三种压缩方式,并且将日志组件与存储组件分离,推送至请求端进行显示;用户通过日志查询界面输入的查询条件,并生成汇总数据;根据查询条件生成查询请求,并发送至日志查询系统进行日志查询。通过同时请求多个端设备的日志数据进行采集,并通过k8s云原生结构化部署生态化,实现了轻量化部署容器组件;存储结构由流式标签构成实现优化;将多个端设备返回的日志数据转换为统一的数据格式,降低后端存储成本;将转换后的日志数据中属于日志查询请求所请求的查询范围的数据,选择gzip、lz4和snappy三种压缩方式,推送至请求端进行显示,通过调整压缩比例的方式可以更多的减小文件数量,提高服务器性能;并且将日志组件与存储组件分离,各组件间均能做到快速扩容和版本迭代,最小化对生产的影响,降低了维护成本。本专利技术能够实现查询日志架构的生态化和组件轻量化,部署便捷,降低了人工和运维成本,解决可后台查询日志的技术难度问题,以及对服务器造成的压力问题,便于研发及运维人员分析问题。
附图说明
[0015]为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0016]图1为本专利技术实施例1中日志数据采集方式的流程图;
[0017]图2为本专利技术实施例1中采集json格式数据的展示图;
[0018]图3为本专利技术实施例1中日志组件的演示图;
[0019]图4为本专利技术实施例2基于云原生的组件实现日志采集查询存储系统的原理图;
[0020]图5为本专利技术实施例3电子设备的原理图。
具体实施方式
[0021]为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于云原生的组件实现日志采集查询存储方法,其特征在于,包括如下步骤,S1.获取用户日志查询请求;S2.响应于用户日志查询请求,向多个端设备请求日志数据的采集,其中通过k8s部署容器组件;S3.将多个端设备返回的日志数据转换为统一的数据格式,得到转换后的日志数据,存储结构包括多个流式标签;S4.将转换后的日志数据中属于日志查询请求所请求的查询范围的数据,选择gzip、lz4和snappy三种压缩方式,并且将日志组件与存储组件分离,推送至请求端进行显示;S5.用户通过日志查询界面输入的查询条件,并生成汇总数据;S6.根据所述查询条件,生成查询请求并发送至日志查询系统。2.如权利要求1所述的一种基于云原生的组件实现日志采集查询存储方法,其特征在于,步骤S3中,日志数据用于存储包括entries、block、chunk和label解析。3.如权利要求1所述的一种基于云原生的组件实现日志采集查询存储方法,其特征在于,步骤S3具体包括如下步骤:S3

1.1entries解析:a)每个entry均是一条单独的日志行;b)一个block包括一系列entries;S3

2.block解析:a)一个block包括多个entries;b)每个entries的元数据记录最小和最大的纳秒级时间戳以及偏移量;S3

3.chunk解析:a)chunk包括多个block,每个block均有唯一个checksum;S3

4.label解析:a)...

【专利技术属性】
技术研发人员:张长双黄平
申请(专利权)人:天翼电子商务有限公司
类型:发明
国别省市:

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

1