System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及日志数据查询,尤其涉及一种日志数据的查询方法及系统。
技术介绍
1、网络安全设备可用于记录日志数据,以满足用户对功能业务的要求。针对海量日志的读写、导入导出、汇聚要求比较高,网络安全设备系统中使用postgresql数据库,业务产生的大量日志数据可以存储至postgresql数据库,按照天表单位存储,数据查询时可以按照条件查询单表或者多表,并支持多进程同时访问。
2、然而,postgresql数据库是行式数据库,其读写、导入导出、汇聚性能较差,对于数据量大、复杂语句查询的性能差。并且多进程查询时日志数据读写占用大量内存和io操作,如果设备运行环境功能业务对内存要求较高,剩余内存少时,访问postgresql数据库查询可能会导致系统异常。
技术实现思路
1、本申请提供一种日志数据的查询方法及系统,以解决数据查询性能低、并发查询内存占用多造成系统异常的问题。
2、第一方面,本申请提供一种日志数据的查询方法,包括:
3、获取客户端发送的查询请求;
4、在临时缓存中查询与所述查询请求关联的目标日志数据,所述临时缓存中存储有预设周期内接收到的查询请求和在日志数据库中查询到的日志数据,所述日志数据库中存储有第一数据文件,以及预设文件数量压缩得到的第二数据文件,所述第一数据文件以文本存储方式记录日志数据,所述第二数据文件以列式存储方式记录日志数据;
5、如果在所述临时缓存中查询到所述目标日志数据,将所述目标日志数据反馈至所述客
6、如果在所述临时缓存中未查询到所述目标日志数据,基于所述查询请求在所述日志数据库中查询所述目标日志数据,以及将所述目标日志数据反馈至所述客户端。
7、在可选的实施方式中,所述方法还包括:
8、获取待存储日志数据;
9、检测所述待存储日志数据的生成时间;
10、基于所述生成时间创建时间目录;
11、在所述时间目录下创建第一数据文件;
12、将所述待存储日志数据写入所述时间目录下的第一数据文件。
13、在可选的实施方式中,所述方法还包括:
14、检测写入所述第一数据文件的日志数量;
15、在所述日志数量等于第一数量阈值时,创建新的第一数据文件,以及将所述待存储日志数据写入所述新的第一数据文件;
16、在所述日志数量小于第一数量阈值时,将所述待存储日志数据写入所述第一数据文件。
17、在可选的实施方式中,所述方法还包括:
18、检测所述时间目录下第一数据文件的第一文件数量;
19、在所述第一文件数量大于或等于第二数量阈值时,将所述第二数量阈值的第一数据文件压缩为第二数据文件。
20、在可选的实施方式中,所述方法还包括:
21、检测所述时间目录下第二数据文件的第二文件数量;
22、在所述第二文件数量大于或等于第三数量阈值时,将与所述第三数量阈值数量相等的第二数据文件压缩为第三数据文件,所述第二数据文件存储单个模型的数据,所述第三数据文件存储多个模型的数据。
23、在可选的实施方式中,所述方法还包括:
24、获取到客户端发送的查询请求后,为所述查询请求分配任务标识,所述任务标识为表征所述查询请求的唯一标识符;
25、基于所述任务标识,在所述日志数据库中查询所述目标日志数据,以及将所述目标日志数据反馈至所述客户端。
26、在可选的实施方式中,所述方法还包括:
27、获取到多个查询请求时,检测多个查询请求的接收时间;
28、按照所述接收时间对多个查询请求的任务标识进行排序,以得到第一任务执行序列;
29、按照所述第一任务执行序列,基于所述任务标识关联的查询请求在所述日志数据库中查询目标日志数据。
30、在可选的实施方式中,所述方法还包括:
31、获取到多个查询请求时,检测多个查询请求的查询任务级别
32、按照所述查询任务级别对多个查询请求的任务标识进行排序,以得到第二任务执行序列;
33、按照所述第二任务执行序列,基于所述任务标识关联的查询请求在所述日志数据库中查询目标日志数据。
34、在可选的实施方式中,所述方法还包括:
35、将所述目标日志数据反馈至所述客户端后,将所述查询请求的任务标识和所述目标日志数据存储至所述临时缓存中,以及记录存储时间;
36、在所述存储时间的预设时长后,在所述临时缓存中删除所述查询请求的任务标识和所述目标日志数据。
37、第二方面,本申请提供一种日志数据的查询系统,包括:客户端和网络安全设备,所述客户端与所述网络安全设备建立通信连接;
38、所述网络安全设备被配置为:
39、获取客户端发送的查询请求;
40、在临时缓存中查询与所述查询请求关联的目标日志数据,所述临时缓存中存储有预设周期内接收到的查询请求和在日志数据库中查询到的日志数据,所述日志数据库中存储有第一数据文件,以及预设文件数量压缩得到的第二数据文件,所述第一数据文件以文本存储方式记录日志数据,所述第二数据文件以列式存储方式记录日志数据;
41、如果在所述临时缓存中查询到所述目标日志数据,将所述目标日志数据反馈至所述客户端;
42、如果在所述临时缓存中未查询到所述目标日志数据,基于所述查询请求在所述日志数据库中查询所述目标日志数据,以及将所述目标日志数据反馈至所述客户端。
43、由以上技术方案可知,本申请提供一种日志数据的查询方法及系统,所述方法可以获取客户端发送的查询请求,在临时缓存中查询与查询请求关联的目标日志数据。如果在临时缓存中查询到目标日志数据,将目标日志数据反馈至客户端。如果在临时缓存中未查询到目标日志数据,基于查询请求在日志数据库中查询目标日志数据,以及将目标日志数据反馈至客户端。其中,临时缓存中存储有预设周期内接收到的查询请求和在日志数据库中查询到的日志数据。所述方法可以通过修改数据存储方式、替换数据库、增加查询数据管理方式,解决网络安全设备数据查询性能低、并发查询大量日志造成系统异常的问题。
本文档来自技高网...【技术保护点】
1.一种日志数据的查询方法,其特征在于,包括:
2.根据权利要求1所述的日志数据的查询方法,其特征在于,所述方法还包括:
3.根据权利要求2所述的日志数据的查询方法,其特征在于,所述方法还包括:
4.根据权利要求3所述的日志数据的查询方法,其特征在于,所述方法还包括:
5.根据权利要求4所述的日志数据的查询方法,其特征在于,所述方法还包括:
6.根据权利要求1所述的日志数据的查询方法,其特征在于,所述方法还包括:
7.根据权利要求6所述的日志数据的查询方法,其特征在于,所述方法还包括:
8.根据权利要求6所述的日志数据的查询方法,其特征在于,所述方法还包括:
9.根据权利要求6所述的日志数据的查询方法,其特征在于,所述方法还包括:
10.一种日志数据的查询系统,其特征在于,包括:客户端和网络安全设备,所述客户端与所述网络安全设备建立通信连接;
【技术特征摘要】
1.一种日志数据的查询方法,其特征在于,包括:
2.根据权利要求1所述的日志数据的查询方法,其特征在于,所述方法还包括:
3.根据权利要求2所述的日志数据的查询方法,其特征在于,所述方法还包括:
4.根据权利要求3所述的日志数据的查询方法,其特征在于,所述方法还包括:
5.根据权利要求4所述的日志数据的查询方法,其特征在于,所述方法还包括:
6.根据权利要求1所述的日...
【专利技术属性】
技术研发人员:张欢,
申请(专利权)人:武汉思普崚技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。