一种日志写入方法、装置、设备及介质制造方法及图纸

技术编号:33204464 阅读:19 留言:0更新日期:2022-04-24 00:47
本发明专利技术实施例公开了一种日志写入方法、装置、设备及介质。其中,日志写入方法,包括:根据日志写入链路的优先级和日志写入链路的状态,在至少两条日志写入链路中确定目标日志写入链路;通过所述目标日志写入链路,将用户日志写入至日志数据库。本发明专利技术实施例的技术方案,通过多条日志写入链路的优先级和状态,确定进行日志写入的目标日志写入链路,提高日志写入的可靠性。的可靠性。的可靠性。

【技术实现步骤摘要】
一种日志写入方法、装置、设备及介质


[0001]本专利技术实施例涉及计算机技术,尤其涉及一种日志写入方法、装置、设备及介质。

技术介绍

[0002]随着互联网技术的快速发展,越来越多的平台提供了在线办理业务的信息系统,例如,铁路信息系统。信息系统的日志是记录操作人员操作信息的重要手段,是在产生操作事故时进行事故分析的重要依据,因此,在一些对操作准确度要求较高的信息系统中,需要保证日志记录的可靠性。
[0003]现有技术中,为提高日志记录的可靠性,经常采用分布式日志记录的方法,在多个存储节点中进行日志记录,但在出现多个存储节点出现服务中断时,无法进行日志记录,会丢失部分用户操作日志,为后续操作回溯带来不便。

技术实现思路

[0004]本专利技术实施例提供一种日志写入方法、装置、设备及介质,通过多条日志写入链路的优先级和状态,确定进行日志写入的目标日志写入链路,提高日志写入的可靠性。
[0005]第一方面,本专利技术实施例提供了一种日志写入方法,所述方法包括:
[0006]根据日志写入链路的优先级和日志写入链路的状态,在至少两条日志写入链路中确定目标日志写入链路;
[0007]通过所述目标日志写入链路,将用户日志写入至日志数据库。
[0008]第二方面,本专利技术实施例还提供了一种日志写入装置,所述装置包括:
[0009]目标日志写入链路确定模块,用于根据日志写入链路的优先级和日志写入链路的状态,在至少两条日志写入链路中确定目标日志写入链路;
[0010]用户日志写入模块,用于通过所述目标日志写入链路,将用户日志写入至日志数据库。
[0011]第三方面,本专利技术实施例还提供了一种电子设备,包括:
[0012]一个或多个处理器;
[0013]存储器,用于存储一个或多个程序;
[0014]当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本专利技术任意实施例提供的日志写入方法。
[0015]第四方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本专利技术任意实施例提供的日志写入方法。
[0016]本专利技术实施例的技术方案,根据日志写入链路的优先级和日志写入链路的状态,在至少两条日志写入链路中确定目标日志写入链路,并通过目标日志写入链路,将用户日志写入至日志数据库,通过多条日志写入链路的优先级和状态,确定进行日志写入的目标日志写入链路,提高日志写入的可靠性。
附图说明
[0017]图1a是本专利技术实施例一中的一种日志写入方法的流程图;
[0018]图1b是本专利技术实施例一中的分布式服务系统的架构示意图;
[0019]图1c是本专利技术实施例一种的确定目标日志写入链路的流程图;
[0020]图2a是本专利技术实施例二中的一种日志写入方法的流程图;
[0021]图2b是本专利技术实施例二中的确定目标日志写入链路的流程图;
[0022]图2c是本专利技术实施例二中的本地用户日志回写的流程图;
[0023]图2d是本专利技术实施例二中的日志写入链路升级/降级的示意图;
[0024]图2e是本专利技术实施例二中的日志写入链路升级的流程图;
[0025]图3a是本专利技术实施例三中的一种日志写入方法的流程图;
[0026]图3b是本专利技术实施例三中的用户日志队列的示意图;
[0027]图3c是本专利技术实施例三中的用户日志分级写入方法的流程图;
[0028]图3d是本专利技术实施例三中的日志查询方法的示意图;
[0029]图3e是本专利技术实施例三中的日志查询指令拆分示意图;
[0030]图4是本专利技术实施例四中的一种日志写入装置的结构示意图;
[0031]图5是本专利技术实施例五提供的一种设备的结构示意图。
具体实施方式
[0032]下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。
[0033]实施例一
[0034]图1a为本专利技术实施例一中的一种日志写入方法的流程图,本实施例的技术方案适用于在多条日志写入链路中选择目标日志写入链路进行日志写入的情况,该方法可以由日志写入装置执行,该装置可以由软件和/或硬件来实现,并可以集成在各种通用计算机设备中。
[0035]本实施例中的日志写入方法由服务系统中的应用服务执行,具体的,分布式服务系统的架构如图1b所示,多个应用服务通过统一的服务网关向客户端提供服务,每个应用服务中包含有一个用户日志模块,当用户在客户端进行页面操作时,应用服务内置的用户日志模块会拦截用户操作,从而获取到包含用户操作信息和操作结果的用户日志,进而应用服务将用户日志写入至日志数据库。其中,日志数据库可以是一个独立的数据库,也可以是共享业务服务数据库,既可以是单机数据库,也可以是由多个数据库构成的数据库集群。
[0036]本实施例中的日志写入方法,具体包括如下步骤:
[0037]步骤110、根据日志写入链路的优先级和日志写入链路的状态,在至少两条日志写入链路中确定目标日志写入链路。
[0038]其中,日志写入链路用于将用户日志模块获取到的用户日志写入到日志数据库中,日志写入链路可以是应用服务与日志数据库直接通信连接的链路,还可以是应用服务与日志数据库通过其他服务间接通信连接的链路。
[0039]本实施例中,由于服务系统中存在至少两条日志写入链路,且各日志写入链路的
优先级不同,因此,可以根据日志写入链路的优先级和日志写入链路的状态,在服务系统提供的至少两条日志写入链路中确定目标日志写入链路。具体的,可以首先判断优先级最高的日志写入链路的状态是否为连通状态,若是,则直接将优先级最高的日志写入链路确定为目标日志写入链路,否则,继续按照优先级顺序判断下一优先级的日志写入链路状态,直至获取到处于连通状态的日志写入链路,并将该处于连通状态的日志写入链路确定为目标日志写入链路。
[0040]为了提高确定目标日志写入链路的效率,可以将第一轮日志写入过程中确定的目标日志写入链路作为当前可用链路进行存储,在后续进行日志写入时,可以直接获取上一次进行日志写入时所采用的日志写入链路,并判断该日志写入链路是否处于连通状态,若是,则直接将该日志写入链路作为目标日志写入链路,否则,按照优先级顺序,继续判断上一次使用的日志写入链路的下一优先级的日志写入链路是否处于连通状态,直至获取到处于连通状态的日志写入链路,并将其作为目标日志写入链路。
[0041]示例性的,服务系统提供的日志写入链路由高优先级到低优先级分别为:数据库直接写入链路、基于日志收集服务的日志写入链路以及基于消息队列的日志写入链路。首次写入用户日志时确定目标日志写入链路的流程如图1c所示,首先判断优先级最高的数据库直接写入链路是否处于连通状态,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种日志写入方法,其特征在于,包括:根据日志写入链路的优先级和日志写入链路的状态,在至少两条日志写入链路中确定目标日志写入链路;通过所述目标日志写入链路,将用户日志写入至日志数据库。2.根据权利要求1所述的方法,其特征在于,根据日志写入链路的优先级和日志写入链路的状态,在至少两条日志写入链路中确定目标日志写入链路,包括:在可用链路存储单元中获取当前可用链路的标识;以所述当前可用链路为起点,根据日志写入链路的优先级,依次判断各日志写入链路的状态,将获取到的首个处于连通状态的日志写入链路确定为目标日志写入链路;将所述可用链路存储单元中当前可用链路的标识更新为所述目标日志写入链路的标识。3.根据权利要求1所述的方法,其特征在于,通过所述目标日志写入链路,将用户日志写入至日志数据库,包括:根据用户日志的优先级,对所述用户日志进行排序,得到用户日志队列;在所述日志数据库的状态指标达到设定写入条件的情况下,通过所述目标日志写入链路,将所述用户日志队列中的用户日志,顺序写入日志数据库中。4.根据权利要求3所述的方法,其特征在于,通过所述目标日志写入链路,将用户日志写入至日志数据库,还包括:在所述日志数据库的状态未达到设定写入条件的情况下,根据用户日志的优先级将用户日志队列中的用户日志分为优先级高于或者等于设定优先级阈值的第一类用户日志,以及优先级低于所述优先级阈值的第二类用户日志;通过所述目标日志写入链路,将所述第一类用户日志写入至日志数据库,并将第二类用户日志写入至本地。5.根据权利要求2所述的方法,其特征在于,还包括:在不存在处于连通状态的日志写入链路的情况下,将用户日志写入至本地,并将所述可用链路存储单元中的当前可用链路的标识更新为本地存储。6.根据权利要求5所述的方法,其特征在于,在将用户日志写入至本地之后,还包括:在检测到至少一条日志...

【专利技术属性】
技术研发人员:刘子扬
申请(专利权)人:北京全路通信信号研究设计院集团有限公司
类型:发明
国别省市:

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

1