掌桥专利:专业的专利平台
掌桥专利
首页

一种日志数据的确定方法、装置、电子设备及介质

文献发布时间:2024-04-18 20:01:23


一种日志数据的确定方法、装置、电子设备及介质

技术领域

本发明涉及软件开发技术领域,尤其涉及一种日志数据的确定方法、装置、电子设备及介质。

背景技术

在B端业务系统中,需要对运营人员修改业务数据的信息进行记录以形成日志数据,如在记录业务数据时,除了业务实体信息的前后对比之外,还会额外记录运营人员信息(即操作人)、操作时间,以及当时变更的背景等。

现有日志数据的确定方法较为繁琐,降低了日志数据的确定效率。

发明内容

本发明提供了一种日志数据的确定方法、装置、电子设备及介质,以简化现有的执行步骤,提高日志数据的确定效率。

根据本发明的一方面,提供了一种日志数据的确定方法,所述方法包括:

获取用户的至少一个业务动作;

识别所述至少一个业务动作,得到目标业务动作集合,所述目标业务动作集合构成一个完整的业务操作;

基于所述目标业务动作集合确定所述业务操作的日志数据,并将所述日志数据进行存储。

根据本发明的另一方面,提供了一种日志数据的确定装置,包括:

获取模块,用于获取用户的至少一个业务动作;

识别模块,用于识别所述至少一个业务动作,得到目标业务动作集合,所述目标业务动作集合构成一个完整的业务操作;

确定模块,用于基于所述目标业务动作集合确定所述业务操作的日志数据,并将所述日志数据进行存储。

根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:

至少一个处理器;以及

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的日志数据的确定方法。

根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的日志数据的确定方法。

本发明实施例提供了一种日志数据的确定方法、装置、电子设备及介质,所述方法包括:获取用户的至少一个业务动作;识别所述至少一个业务动作,得到目标业务动作集合,所述目标业务动作集合构成一个完整的业务操作;基于所述目标业务动作集合确定所述业务操作的日志数据,并将所述日志数据进行存储。利用上述技术方案,通过识别至少一个业务动作,得到构成一个完整业务操作的目标业务动作集合,能够将完整业务操作存储为一个日志数据,简化现有的执行步骤,提高日志数据的确定效率。

应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是根据本发明实施例一提供的一种日志数据的确定方法的流程图;

图2是根据本发明实施例二提供的一种日志数据的确定方法的流程图;

图3是根据本发明实施例二提供的另一种日志数据的确定方法的流程图;

图4是根据本发明实施例三提供的一种日志数据的确定装置的结构示意图;

图5是根据本发明实施例四提供的一种电子设备的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“原始”、“目标”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

实施例一

图1是根据本发明实施例一提供的一种日志数据的确定方法的流程图,本实施例可适用于对日志数据进行确定的情况,该方法可以由日志数据的确定装置来执行,该日志数据的确定装置可以采用硬件和/或软件的形式实现,该日志数据的确定装置可配置于电子设备中。

可以认为的是,现有技术在针对单一场景下的操作记录时,主要通过表结构的设计,然后在具体的业务逻辑中,针对于产品侧的个性化日志数据进行数据对比拼接,并进行数据存储,在展示侧也会提供特有的接口进行数据读取,返回给前端进行数据展示。而当记录不同业务场景的业务操作时,通常会再次执行一遍上述步骤。故现有方案一方面浪费了研发资源,降低了日志数据的确定效率;另一方面从系统架构角度出发,非核心的代码冲刺在核心逻辑层,持续迭代风险较高。

基于此,本发明实施例提供了一种日志数据的确定方法,通过将通用能力进行抽取,比如将数据对比、操作人、操作时间等进行抽象,借助于栈这种数据结构,识别单次操作的完结状态,然后进行日志存储;同时提供了统一的界面查询能力,快速支持产品迭代。如图1所示,该方法包括:

S110、获取用户的至少一个业务动作。

本步骤可以对用户的至少一个业务动作进行获取,以进行后续业务动作的识别及确定日志数据的步骤。获取的方式例如可以实时进行获取,也可以周期性对业务动作进行获取,如每隔预设周期来获取用户的至少一个业务动作。

S120、识别所述至少一个业务动作,得到目标业务动作集合,所述目标业务动作集合构成一个完整的业务操作。

目标业务动作集合可以包括一个或多个的业务动作,在本实施例中,目标业务动作集合中的至少一个业务动作可以构成一个完整的业务操作。

在获取得到用户的至少一个业务动作之后,本实施例则可以对至少一个业务动作进行识别,以确定得到目标业务动作集合,具体如何得到目标业务动作集合的手段不限,如可以通过将至少一个业务动作输入至某预设模型中来直接输出目标业务动作集合,也可以通过其他方法来识别得到目标业务动作集合,如AOP切面方法等,本实施例对此不作进一步展开。

S130、基于所述目标业务动作集合确定所述业务操作的日志数据,并将所述日志数据进行存储。

通过上述步骤得到目标业务动作集合后,可以对业务操作的日志数据进行确定,具体确定的过程如可以根据业务操作的实际情况进行确定。

在一个实施例中,所述基于所述目标业务动作集合确定所述业务操作的日志数据,包括:

利用SPEL表达式获取所述目标业务动作集合的目标集合信息;

将所述目标集合信息确定为所述业务操作的日志数据。

目标集合信息可以认为是目标业务动作集合的相关信息,如可以包括目标业务动作集合所包含业务动作的个数,还可以包括各业务动作的有关信息,如操作用户、操作时间和操作备注中的至少一项等。

具体的,本实施例可以利用SPEL表达式来对目标业务动作集合的目标集合信息进行获取,从而可以将得到的目标集合信息确定为此业务操作的日志数据,并将日志数据进行存储。

本发明实施例一提供的一种日志数据的确定方法,获取用户的至少一个业务动作;识别所述至少一个业务动作,得到目标业务动作集合,所述目标业务动作集合构成一个完整的业务操作;基于所述目标业务动作集合确定所述业务操作的日志数据,并将所述日志数据进行存储。利用该方法,通过识别至少一个业务动作,得到构成一个完整业务操作的目标业务动作集合,能够将完整业务操作存储为一个日志数据,简化现有的执行步骤,提高日志数据的确定效率。

实施例二

图2是根据本发明实施例二提供的一种日志数据的确定方法的流程图,本实施例二在上述各实施例的基础上进行优化。在本实施例中,将识别所述至少一个业务动作,得到目标业务动作集合进一步具体化为:采用AOP切面方法识别所述至少一个业务动作,得到目标业务动作集合。

本实施例尚未详尽的内容请参考实施例一。

如图2所示,该方法包括:

S210、获取用户的至少一个业务动作。

S220、采用AOP切面方法识别所述至少一个业务动作,得到目标业务动作集合,所述目标业务动作集合构成一个完整的业务操作。

目标记录数据可以用于记录执行的函数深度,如可根据不同的操作来对应进行更新。预设数据可以为预先设置的数值,用于表征业务操作的开始或结束,如预设数据可以为零。

在本实施例中,可以采用AOP切面方法来识别得到至少一个业务动作对应的目标业务动作集合,识别的过程例如可以借助技术栈,示例性的,可以将至少一个业务动作按照执行顺序进行压栈、出栈,与此同时可以更新对应的目标记录数据;随后可以根据目标记录数据数值的变化来识别单次业务操作的结束,例如,当所记录的目标记录数据为预设数据时,可以认为当前所调用的函数已结束调用,此时可以将目标记录数据之前所执行的业务动作确定为目标业务动作集合;当所记录的目标记录数据不是预设数据时,可以认为当前正在执行所调用的函数,即当前未结束调用,则可以继续根据业务动作更新目标记录数据,直至目标记录数据为预设数据,则可认为所调用的函数已结束调用。此处不对更新目标记录数据的具体步骤进行限定,如可以根据预设规则进行配置。

S230、基于所述目标业务动作集合确定所述业务操作的日志数据,并将所述日志数据进行存储。

本发明实施例二提供的一种日志数据的确定方法,获取用户的至少一个业务动作;采用AOP切面方法识别所述至少一个业务动作,得到目标业务动作集合,所述目标业务动作集合构成一个完整的业务操作;基于所述目标业务动作集合确定所述业务操作的日志数据,并将所述日志数据进行存储。利用该方法,通过采用AOP切面方法识别至少一个业务动作,能够提高所得到目标业务动作集合的准确率,进而为后续准确存储日志数据提供了基础。

在一个实施例中,所述将所述至少一个业务动作按照执行顺序进行压栈、出栈,更新目标记录数据,包括:

针对每个业务动作,当所述业务动作进行压栈时,将所述目标记录数据作加一处理;

当所述业务动作进行出栈时,将所述目标记录数据作减一处理。

在一个实施方式中,更新目标记录数据的过程例如可以为:针对每个业务动作,当该业务动作进行压栈时,可以认为该业务动作开始调用函数,则可以将目标记录数据作加一处理;当该业务动作进行出栈时,可以认为该业务动作所对应的函数已调用结束,此时可以将目标记录数据作减一处理。示例性的,执行某个业务操作需要调用多个嵌入函数,如首先可以调用函数1,此时目标记录数据可以由0变为1,在调用函数1的过程中需要调用函数2,则可以将目标记录数据作加一处理,变为2,当调用完成函数2需要出栈时,则可以在出栈完成后,将目标记录数据作减一处理,变为1;随后当调用完成函数1需要出栈时,则可以在出栈完成后,继续将目标记录数据作减一处理,变为0,此时可以将这两个业务动作认为是一个目标业务动作集合,即可以认为执行完成了一个完整的业务操作。

图3是根据本发明实施例二提供的另一种日志数据的确定方法的流程图,如图3所示,当角色A需要更改客户名称,角色B需要更改客户手机号时,本实施例可以此两个业务动作看作是更改客户实体的一个业务动作,通过切面方法来进行识别,从而确定得到此业务操作的日志数据,并将日志数据进行存储。其中,更改客户名称、更改客户手机号或更改客户实体可以认为是函数的一次调用;切面可以用于记录单次业务操作的开始和结束,如绑定到threadLocal中,进行用户日志信息拼接;技术栈可以用于记录执行的函数深度,访问一次函数进行压栈一次,函数执行完成进行出栈,出栈完成代表单次动作执行完成;同时,可以基于spel表达式,动态解析入参实体中特定字段,用于识别备注、更新动作等。

示例性的,首先可以依据入参模型标记tag来记录数据变更;然后依据切面方法入参与注解自定义参数进行解析赋值,例如,操作用户、备注、操作说明等;最后确保执行完毕后进行记录。其中,单个类中的互相调用,只会执行一次切面,而不同类之间的调用,则需要进行加一。

因此,本发明实施例提供的日志数据的确定方法,通过把通用能力进行抽象,由切面进行管理;借助于spel表达式,动态获取不同函数的操作备注和处理人;同时,通过使用栈这种结构,识别了单次操作的开始和结束,并把操作结尾进行日志的汇总存储,简化了执行步骤,提高了研发效率,进而缩短了交付周期。

实施例三

图4是根据本发明实施例三提供的一种日志数据的确定装置的结构示意图。如图4所示,该装置包括:

获取模块310,用于获取用户的至少一个业务动作;

识别模块320,用于识别所述至少一个业务动作,得到目标业务动作集合,所述目标业务动作集合构成一个完整的业务操作;

确定模块330,用于基于所述目标业务动作集合确定所述业务操作的日志数据,并将所述日志数据进行存储。

本发明实施例三提供的一种日志数据的确定装置,通过获取模块获取用户的至少一个业务动作;通过识别模块识别所述至少一个业务动作,得到目标业务动作集合,所述目标业务动作集合构成一个完整的业务操作;通过确定模块基于所述目标业务动作集合确定所述业务操作的日志数据,并将所述日志数据进行存储。利用该装置,通过识别至少一个业务动作,得到构成一个完整业务操作的目标业务动作集合,能够将完整业务操作存储为一个日志数据,简化现有的执行步骤,提高日志数据的确定效率。

可选的,识别模块320包括:

识别单元,用于采用AOP切面方法识别所述至少一个业务动作,得到目标业务动作集合。

可选的,所述识别单元包括:

更新子单元,用于将所述至少一个业务动作按照执行顺序进行压栈、出栈,更新目标记录数据;

确定子单元,用于当所述目标记录数据为预设数据时,将所述目标记录数据对应的业务动作确定为目标业务动作集合。

可选的,所述更新子单元具体用于:

针对每个业务动作,当所述业务动作进行压栈时,将所述目标记录数据作加一处理;

当所述业务动作进行出栈时,将所述目标记录数据作减一处理。

可选的,所述确定模块330具体用于:

利用SPEL表达式获取所述目标业务动作集合的目标集合信息;

将所述目标集合信息确定为所述业务操作的日志数据。

可选的,所述目标集合信息包括操作用户、操作时间和操作备注中的至少一项。

本发明实施例所提供的日志数据的确定装置可执行本发明任意实施例所提供的日志数据的确定方法,具备执行方法相应的功能模块和有益效果。

实施例四

图4是根据本发明实施例四提供的一种电子设备的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。

如图4所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(ROM)12、随机访问存储器(RAM)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(ROM)12中的计算机程序或者从存储单元18加载到随机访问存储器(RAM)13中的计算机程序,来执行各种适当的动作和处理。在RAM 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、ROM 12以及RAM 13通过总线14彼此相连。输入/输出(I/O)接口15也连接至总线14。

电子设备10中的多个部件连接至I/O接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。

处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如日志数据的确定方法。

在一些实施例中,日志数据的确定方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由ROM 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到RAM 13并由处理器11执行时,可以执行上文描述的日志数据的确定方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行日志数据的确定方法。

本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。

在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。

计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

相关技术
  • 低泄漏长寿命的浮环密封装置
  • 一种长寿命低泄漏指尖-高温流体介质组合密封装置
技术分类

06120116552202