一种日志处理方法、设备及可读存储介质技术

技术编号:36752927 阅读:12 留言:0更新日期:2023-03-04 10:41
本发明专利技术公开了一种日志处理方法、设备及可读存储介质。其中,该方法包括:获取客户端的日志信息;对所述日志信息进行裁剪处理,得到保留所述日志信息中的预设信息的目标日志字符串;保存所述目标日志字符串。通过上述方法,能够减少数据存储量,提高存储效率。提高存储效率。提高存储效率。

【技术实现步骤摘要】
一种日志处理方法、设备及可读存储介质


[0001]本专利技术涉及软件开发领域,特别是涉及一种日志处理方法、设备及可读存储介质。

技术介绍

[0002]应用程序的日志信息,对于研发人员来讲,是极其重要的,可以通过日志信息,排查到代码执行遇到的各种问题,这些重要的日志信息对于研发人员解决线上问题至为重要。通过完善的日志信息,进一步掌握代码执行的实际情况,利用日志工具分析问题,解决问题。
[0003]通常,日志信息包含大量的信息,现有的直接将该日志信息进行保存的做法,容易使得保存的数据太多,占据太多的存储空间。

技术实现思路

[0004]本专利技术主要解决的技术问题是提供一种日志处理方法、设备及可读存储介质,能够减少数据存储量,提高存储效率。
[0005]为解决上述技术问题,本申请采用的一个技术方案是:提供一种日志处理方法,该方法包括:获取客户端的日志信息;对日志信息进行裁剪处理,得到保留日志信息中的预设信息的目标日志字符串;保存目标日志字符串。
[0006]其中,预设信息包括日志信息的异常名称和客户端存在的关键异常信息,关键异常信息包括异常原因和异常发生时间中的至少一者。
[0007]其中,在保存目标日志字符串之前,该方法还包括以下任意一个或多个步骤:将目标日志字符串整理成预设格式,其中,经整理的目标日志字符串中的每个预设信息对应的子字符串采用预设分隔符进行分割;对目标日志字符串进行非对称加密。
[0008]其中,对日志信息进行裁剪处理,得到保留日志信息中的预设信息的目标日志字符串,包括:将日志信息转换成初始日志字符串;对初始日志字符串进行裁剪,得到目标日志字符串。
[0009]其中,将日志信息转换成初始日志字符串,包括:对于字典类型的用户信息,采用json转换的方式进行转换,得到初始日志字符串。
[0010]其中,保存所述目标日志字符串,包括:缓存所述目标日志字符串;将缓存的所述目标日志字符串写入到数据库;删除缓存的所述目标日志字符串。
[0011]其中,所述将缓存的所述目标日志字符串写入到数据库,包括:以时间戳为主键,将同一时段的所述目标日志字符串关联至对应的时间戳;若同一所述时间戳存在小于或等于预设数量条所述目标日志字符串,则将所述时间戳对应的所述目标日志字符串写入至所述数据库的一条记录中;若同一所述时间戳存在多于预设数量条的所述目标日志字符串,则将多于预设数量条的所述目标日志字符串分割整理后写入至所述数据库的多条记录中。
[0012]其中,删除缓存的所述目标日志字符串,包括:若缓存的所述目标日志字符串的总容量超过预设容量空间,则删除最早缓存的所述目标日志字符串。
[0013]其中,在所述获取客户端的日志信息之前,所述方法还包括:采用宏定义PALog函数封装日志写入入口;所述获取客户端的日志信息,包括:调用PALog函数,以获取客户端的日志信息。
[0014]为解决上述技术问题,本申请采用的另一个技术方案是:提供一种电子设备,该电子设备包括相互耦接的存储器和处理器,存储器存储有程序指令;处理器用于执行存储器中存储的程序指令,以实现上述的日志处理方法。
[0015]为解决上述技术问题,本申请采用的另一个技术方案是:提供一种计算机可读存储介质,该计算机可读存储介质用于存储程序指令,程序指令能够被执行以实现上述的日志处理方法。
[0016]以上方案,对日志进行信息裁剪后再进行存储,一方面减少了存储占用,提高存储效率,一方面保留了日志中的预设信息,确保日志中有效信息的保存,以使得后续利用保留的信息能够实现对客户端问题的回放进而实现问题定位与分析。进一步地,由于上述方案减少了单条日志的存储量,故能够对该客户端产生的每条日志均进行上述裁剪后存储,由此后续可以通过存储的每条日志以得到该客户端的问题回放完整链路。
附图说明
[0017]图1是本申请提供的日志处理方法一实施例的流程示意图;
[0018]图2是NSException函数在控制台输出的一条日志信息的示意图;
[0019]图3是本申请提供的日志处理方法另一实施例的流程示意图;
[0020]图4是本申请提供的日志处理设备一实施方式的框架结构示意图;
[0021]图5是本申请提供的计算机可读存储介质一实施方式的框架示意图;
[0022]图6是本申请提供的日志处理装置一实施例的结构示意图。
具体实施方式
[0023]下面结合附图和实施方式对本专利技术进行详细说明。
[0024]需要说明的是,若本申请实施例中有涉及“第一”、“第二”等的描述,则该“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。
[0025]现有的存储日志的方法都是直接对客户端产生的日志直接进行存储,由于一般单条日志包含大量信息,故单条日志占用的存储空间较大。基于此,在大多采用在生产运行阶段,研发人员会舍弃不必要的代码级、流程级日志,仅对客户端的一部分日志的全部内容进行存储,以减少对存储空间的大量占用,然而,这种方式无法保存整个研发过程的日志信息,容易导致对很多线上的问题排查产生困扰和难度。
[0026]为解决上述不足,本申请实施例提供一种日志处理的方法,该方法包括获取客户端的日志信息;对所述日志信息进行裁剪处理,得到保留所述日志信息中的预设信息的目标日志字符串;保存所述目标日志字符串。通过本申请提供的方法减少了单条日志的存储
量,故能够对客户端产生的每条日志均进行上述裁剪后存储,即可以存储整个研发过程中所关注的日志中的核心信息,以便于对该客户端的问题的回放完整,同时也避免存储空间的浪费。
[0027]本实施例方法可以有任意具有数据处理能力的电子设备执行,例如为手机、电脑、家用设备等。另外,该电子设备可以为运行该客户端的设备或者与运行该客户端的设备连接的其他设备。
[0028]请参阅图1,图1是本申请提供的日志处理方法一实施例的流程示意图。需注意的是,若有实质上相同的结果,本实施例并不以图1所示的流程顺序为限。如图1所示,本实施例包括:
[0029]步骤S11:获取客户端的日志信息。
[0030]本实施例中,该客户端可以为安装任意操作系统上的软件程序。该操作系统例如为安卓、iOS(iphone Operation System,苹果操作系统)等,对应地,获取的客户端的日志信息可以为安卓系统下的日志信息,也可以是iOS系统下的日志信息。
[0031]具体地,可以采用客户端所在的操作系统所适配的函数代码来实现该日志信息的获取。在一实施方式中,对iOS系统的客户端拟进行日志记录本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种日志处理方法,其特征在于,包括:获取客户端的日志信息;对所述日志信息进行裁剪处理,得到保留所述日志信息中的预设信息的目标日志字符串;保存所述目标日志字符串。2.根据权利要求1所述的方法,其特征在于,所述预设信息包括所述日志信息的异常名称和所述客户端存在的关键异常信息,所述关键异常信息包括异常原因和异常发生时间中的至少一者。3.根据权利要求1所述的方法,其特征在于,在所述保存所述目标日志字符串之前,所述方法还包括以下任意一个或多个步骤:将所述目标日志字符串整理成预设格式,其中,经整理的所述目标日志字符串中的每个所述预设信息对应的子字符串采用预设分隔符进行分割;对所述目标日志字符串进行非对称加密。4.根据权利要求1所述的方法,其特征在于,所述对所述日志信息进行裁剪处理,得到保留所述日志信息中的预设信息的目标日志字符串,包括:将所述日志信息转换成初始日志字符串;对所述初始日志字符串进行裁剪,得到所述目标日志字符串。5.根据权利要求4所述的方法,其特征在于,所述将所述日志信息转换成初始日志字符串,包括:对于字典类型的用户信息,采用json转换的方式进行转换,得到所述初始日志字符串。6.根据权利要求1所述的方法,其特征在于,所述保存所述目标日志字符串,包括:缓存所述目标日志字符串;将缓存的所述目标日志字符串写入到数据库;删除缓存的所述目标日志字符串。...

【专利技术属性】
技术研发人员:赵慧辛鹏辉
申请(专利权)人:平安银行股份有限公司
类型:发明
国别省市:

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

1