CN115544050A - 操作日志记录方法、装置、设备及存储介质 - Google Patents
操作日志记录方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115544050A CN115544050A CN202211504602.1A CN202211504602A CN115544050A CN 115544050 A CN115544050 A CN 115544050A CN 202211504602 A CN202211504602 A CN 202211504602A CN 115544050 A CN115544050 A CN 115544050A
- Authority
- CN
- China
- Prior art keywords
- field
- request
- service
- log
- data before
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2358—Change logging, detection, and notification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请提供一种操作日志记录方法、装置、设备及存储介质,涉及日志记录技术领域。该方法包括:获取多个操作请求,操作请求包括增加、修改或删除操作请求;分别通过各操作请求对应的操作业务接口,获取各操作请求对应的操作前后的业务数据;将各操作请求对应的操作前后的业务数据输入日志生成接口,由日志生成接口分别对各操作请求对应的操作前后的业务数据进行对比处理,并根据比对处理的结果,生成操作请求对应的操作日志,其中,对比处理的结果用于指示业务数据的变更情况。应用本申请实施例,可对操作日志进行统一管理。
Description
技术领域
本申请涉及日志记录技术领域,具体而言,涉及一种操作日志记录方法、装置、设备及存储介质。
背景技术
随着计算机技术的发展,企业对业务管理系统的依赖也越来越强,为了保证业务管理系统稳定可靠地运行,通常可采用记录操作日志的方式追踪对业务管理系统进行操作的情况,如在医药行业,可记录什么人什么时间投入了多少量的物料,什么人什么时间修改了某个实验目的等信息。
现有技术中,为每个操作类型分配对应的操作业务接口,各操作类型的操作日志是在各操作类型对应的各操作业务接口上生成的。相应的,需要从各操作业务接口上分别获取生成的操作日志并进行后续的处理。
然而,这样的处理方式,会加大后期收集各操作日志的工作量,所以如何对操作日志进行统一管理是目前亟待解决的问题。
发明内容
本申请的目的在于,针对上述现有技术中的不足,提供一种操作日志记录方法、装置、设备及存储介质,可对操作日志进行统一管理。
为实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本申请实施例提供了一种操作日志记录方法,所述方法包括:
获取多个操作请求,所述操作请求包括增加、修改或删除操作请求;
分别通过各所述操作请求对应的操作业务接口,获取各所述操作请求对应的操作前后的业务数据;
将各所述操作请求对应的操作前后的业务数据输入日志生成接口,由所述日志生成接口分别对各所述操作请求对应的操作前后的业务数据进行对比处理,并根据比对处理的结果,生成所有操作请求对应的操作日志,其中,所述对比处理的结果用于指示业务数据的变更情况。
可选地,所述分别通过各所述操作请求对应的操作业务接口,获取各所述操作请求对应的操作前后的业务数据之前,所述方法还包括:
根据各所述操作业务接口的属性信息,配置各所述操作业务接口的业务类型、操作类型以及取数方法,所述取数方法用于指示获取各所述操作请求对应的操作前后的业务数据的方法。
可选地,所述分别通过各所述操作请求对应的操作业务接口,获取各所述操作请求对应的操作前后的业务数据,包括:
在所述操作业务接口执行前,调用所述操作业务接口的取数方法获取操作请求对应的操作前的业务数据;
在所述操作业务接口执行后,调用所述操作业务接口的取数方法获取各所述操作请求对应的操作后的业务数据。
可选地,所述由所述日志生成接口分别对各所述操作请求对应的操作前后的业务数据进行对比处理,并根据对比处理的结果,生成所有操作请求对应的操作日志,包括:
由所述日志生成接口分别对各所述操作请求对应的操作前后的业务数据中的字段进行识别,得到各所述操作请求对应的字段的信息,所述字段的信息包括:字段类型、字段名称和字段值;
根据各所述操作请求对应的字段的信息,分别对各所述操作请求对应的操作前后的业务数据进行对比处理,并根据比对处理的结果,生成所有操作请求对应的操作日志。
可选地,所述根据各所述操作请求对应的字段的信息,分别对各所述操作请求对应的操作前后的业务数据进行对比处理,并根据比对处理的结果,生成所有操作请求对应的操作日志,包括:
若所述操作请求对应的第一字段的字段类型为数组类型,则将所述第一字段对应的操作前后的字段值进行对比处理,确定操作前后的字段值是否相同;
若所述操作前后的字段值不同,则将所述第一字段的字段名称作为键;
将所述第一字段对应的操作前后的字段值的各元素进行循环对比,确定所述操作前后的字段值中不同的元素,并将所述不同的元素分别作为值;
根据所述键和所述值,生成所述操作请求对应的操作日志。
可选地,所述根据各所述操作请求对应的字段的信息,分别对各所述操作请求对应的操作前后的业务数据进行对比处理,并根据比对处理的结果,生成所有操作请求对应的操作日志,包括:
若所述操作请求对应的第二字段的字段类型为非数组类型,则将所述第二字段对应的操作前后的字段值进行对比处理,确定操作前后的字段值是否相同;
若所述操作前后的字段值不同,则将所述第二字段的字段名称作为键,以及将所述第二字段对应的操作前后的字段值作为值;
根据所述键和所述值,生成所述操作请求对应的操作日志。
可选地,所述方法还包括:
由所述日志生成接口将所有操作请求对应的操作日志以及各所述操作业务接口对应的业务类型和操作类型进行关联,并存储到数据库中。
可选地,所述方法还包括:
接收查询请求,所述查询请求中携带有查询关键字;
根据所述查询关键字以及操作日志的关联信息,从所述数据库中确定出目标操作日志。
第二方面,本申请实施例还提供了一种操作日志记录装置,所述装置包括:
第一获取模块,用于获取多个操作请求,所述操作请求包括增加、修改或删除操作请求;
第二获取模块,用于分别通过各所述操作请求对应的操作业务接口,获取各所述操作请求对应的操作前后的业务数据;
生成模块,用于将各所述操作请求对应的操作前后的业务数据输入日志生成接口,由所述日志生成接口分别对各所述操作请求对应的操作前后的业务数据进行对比处理,并根据比对处理的结果,生成所有操作请求对应的操作日志,其中,所述对比处理的结果用于指示业务数据的变更情况。
可选地,所述装置还包括:配置模块;
所述配置模块,用于根据各所述操作业务接口的属性信息,配置各所述操作业务接口的业务类型、操作类型以及取数方法,所述取数方法用于指示获取各所述操作请求对应的操作前后的业务数据的方法。
可选地,所述第二获取模块,具体用于在所述操作业务接口执行前,调用所述操作业务接口的取数方法获取操作请求对应的操作前的业务数据;在所述操作业务接口执行后,调用所述操作业务接口的取数方法获取各所述操作请求对应的操作后的业务数据。
可选地,所述生成模块,具体用于由所述日志生成接口分别对各所述操作请求对应的操作前后的业务数据中的字段进行识别,得到各所述操作请求对应的字段的信息,所述字段的信息包括:字段类型、字段名称和字段值;根据各所述操作请求对应的字段的信息,分别对各所述操作请求对应的操作前后的业务数据进行对比处理,并根据比对处理的结果,生成所有操作请求对应的操作日志。
可选地,所述生成模块,还具体用于若所述操作请求对应的第一字段的字段类型为数组类型,则将所述第一字段对应的操作前后的字段值进行对比处理,确定操作前后的字段值是否相同;若所述操作前后的字段值不同,则将所述第一字段的字段名称作为键;将所述第一字段对应的操作前后的字段值的各元素进行循环对比,确定所述操作前后的字段值中不同的元素,并将所述不同的元素分别作为值;根据所述键和所述值,生成所述操作请求对应的操作日志。
可选地,所述生成模块,还具体用于若所述操作请求对应的第二字段的字段类型为非数组类型,则将所述第二字段对应的操作前后的字段值进行对比处理,确定操作前后的字段值是否相同;若所述操作前后的字段值不同,则将所述第二字段的字段名称作为键,以及将所述第二字段对应的操作前后的字段值作为值;根据所述键和所述值,生成所述操作请求对应的操作日志。
可选地,所述装置还包括:关联模块;
所述关联模块,用于由所述日志生成接口将所有操作请求对应的操作日志以及各所述操作业务接口对应的业务类型和操作类型进行关联,并存储到数据库中。
可选地,所述装置还包括:查询模块;
所述查询模块接收查询请求,所述查询请求中携带有查询关键字;根据所述查询关键字以及操作日志的关联信息,从所述数据库中确定出目标操作日志。
第三方面,本申请实施例提供了一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当所述电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行上述第一方面的所述操作日志记录方法的步骤。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述第一方面的所述操作日志记录方法的步骤。
本申请的有益效果是:
本申请实施例提供一种操作日志记录方法、装置、设备及存储介质,该方法包括:获取多个操作请求,操作请求包括增加、修改或删除操作请求;分别通过各操作请求对应的操作业务接口,获取各操作请求对应的操作前后的业务数据;将各操作请求对应的操作前后的业务数据输入日志生成接口,由日志生成接口分别对各操作请求对应的操作前后的业务数据进行对比处理,并根据比对处理的结果,生成操作请求对应的操作日志,其中,对比处理的结果用于指示业务数据的变更情况。
采用本申请实施例提供的操作日志记录方法,可由各操作业务接口仅获取各操作请求对应的操作前后的业务数据,将各操作业务接口获取到的各操作请求对应的操作前后的业务数据发送至日志生成接口后,可通过日志生成接口对所有操作请求对应的操作前后的业务数据进行比对处理,进而生成所有操作请求对应的操作日志。也就是说,可通过日志生成接口统一生成各操作请求对应的操作日志,这样可避免加大后期收集各操作日志的工作量,可对操作日志进行统一管理。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种操作日志记录方法的流程示意图;
图2为本申请实施例提供的另一种操作日志记录方法的流程示意图;
图3为本申请实施例提供的又一种操作日志记录方法的流程示意图;
图4为本申请实施例提供的再一种操作日志记录方法的流程示意图;
图5为本申请实施例提供的一种操作日志记录方法的流程示意图;
图6为本申请实施例提供的一种操作日志记录装置的结构示意图;
图7为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在对本申请实施例进行详细解释之前,首先对本申请的应用场景予以介绍。该应用场景具体可以为对操作日志进行记录的场景,其中,操作日志可属于医药行业,也可属于其它行业,如金融行业等,需要说明的是,本申请不对其进行限定。本申请以医药行业为例进行说明,在医药行业对应的业务管理系统中,各业务模块的操作类型可分别对应有操作业务接口,如物料管理模块的增加、修改、删除等操作可分别对应有增加业务接口、修改业务接口以及删除业务接口。根据本申请背景技术部分的描述可知,目前有关物料管理模块的增加操作日志、修改操作日志以及删除操作日志可分别由增加业务接口、修改业务接口以及删除业务接口生成,也就是说,各操作业务接口不仅用于获取操作前后的业务数据,而且还用于生成各操作日志。可以理解的是,后期若需要收集多个业务管理模块对应的各操作日志时,需要从各业务管理模块对应的各操作业务接口上获取。这样由于各操作日志过于分散,存在收集多个操作日志耗时的问题。
针对上述提出的技术问题,本申请提出一种操作日志记录方法,具体内容可参考本申请下述示例,此处不再进行说明。本申请中的各操作业务接口仅用于获取操作前后的业务数据,日志生成接口基于各操作业务接口获取到的操作前后的业务数据可生成可操作日志,也就是说,各操作日志最后存储在同一个数据库中,即可对操作日志进行统一管理。
如下结合附图对本申请提到的操作日志记录方法进行示例说明。图1为本申请实施例提供的一种操作日志记录方法的流程示意图。如图1所示,该方法可包括:
S101、获取多个操作请求。
其中,操作请求包括增加、修改或删除操作请求。例如对于医药业务管理系统来说,可对医药业务管理系统中的物料管理模块进行操作,操作类型可包括增加、修改、删除等操作。以某一物料为例进行说明,用户可将该物料添加至物料管理模块中,或对物料管理模块中的该物料的相关信息进行修改,或从物料管理模块中删除该物料。
在一种可实现的实施例中,用户可根据实际需求对医药业务管理系统进行操作,如修改实验目的、增加物料等,进而可生成操作请求。可以理解的是,多个操作请求可属于医药业务管理系统中的同一个管理模块,如物料管理模块,也可属于医药业务管理系统中的不同管理模块,需要说明的是,本申请不对其进行限定。
S102、分别通过各操作请求对应的操作业务接口,获取各操作请求对应的操作前后的业务数据。
根据上述描述可知,不同的操作类型对应有不同的操作业务接口,如增加操作类型对应有增加业务接口、修改操作类型对应有修改业务接口、删除操作类型对应有删除业务接口。也就是说,操作业务接口与操作类型,即操作请求具有对应关系,可根据该对应关系确定各操作请求对应的操作业务接口,进而利用各操作请求对应的操作业务接口对各操作请求进行执行,在对业务数据进行增加、修改或删除前后,可获取到各操作请求对应的操作前后的业务数据。
应理解的是,操作业务接口即为操作业务方法,操作业务方法基于操作业务请求,可对业务数据进行操作,如增加、修改、删除,进而可获取到各操作请求对应的操作前后的业务数据。
示例性的,若操作请求为将业务数据1修改为业务数据2,则可利用修改业务接口将业务数据1修改为业务数据2前后,获取修改操作前的业务数据,即业务数据1,获取修改操作后的业务数据,即业务数据2。
S103、将各操作请求对应的操作前后的业务数据输入日志生成接口,由日志生成接口分别对各操作请求对应的操作前后的业务数据进行对比处理,并根据比对处理的结果,生成所有操作请求对应的操作日志。
其中,对比处理的结果用于指示业务数据的变更情况,也就是说,操作日志中包括业务数据的变更情况,即可利用日志生成接口得各操作请求对应的操作日志中的业务数据的变更情况。
在各操作业务接口得到各操作请求对应的操作前后的业务数据后,可将各操作请求对应的操作前后的业务数据发送至该日志生成接口,该日志生成接口可对所有操作业务接口发送的各操作前后的业务数据进行对比处理,进而生成所有操作请求对应的操作日志,每个操作日志中包含有对比处理的结果。也就是说,不管是哪个操作业务接口获取到的操作请求对应的操作前后的业务数据,均由日志生成接口生成所有操作请求对应的操作日志。
综上所述,本申请提供的操作日志记录方法中,可由各操作业务接口仅获取各操作请求对应的操作前后的业务数据,将各操作业务接口获取到的各操作请求对应的操作前后的业务数据发送至日志生成接口后,可通过日志生成接口对所有操作请求对应的操作前后的业务数据进行比对处理,进而生成所有操作请求对应的操作日志。也就是说,可通过日志生成接口统一生成各操作请求对应的操作日志,这样可避免加大后期收集各操作日志的工作量,可对操作日志进行统一管理。
可选地,上述分别通过各操作请求对应的操作业务接口,获取各操作请求对应的操作前后的业务数据之前,该方法还包括:根据各操作业务接口的属性信息,配置各操作业务接口的业务类型、操作类型以及取数方法,取数方法用于指示获取各操作请求对应的操作前后的业务数据的方法。
示例性的,在各操作业务接口对各操作请求进行处理之前,可首先根据各操作业务接口的属性信息,配置各操作业务接口的注解,即注解中包括所对应的操作业务接口的业务类型、操作类型以及取数方法。举例来说,假设操作业务接口为对物料管理模块进行修改的业务接口,则业务类型为物料管理类型、操作类型为修改类型、取数方法为获取对物料管理模块进行修改前后的业务数据的方法。
示例性的,在将各操作业务接口的注解配置完成后,可将各注解标注在所对应的操作业务接口上,在各操作业务接口获取到操作请求后,可利用各操作业务接口对操作请求进行执行,即对业务数据进行例如增加、修改、删除等操作。各操作业务接口对操作请求进行执行前后,可基于面向切面编程(AOP,Aspect Oriented Programming)从各操作业务接口上的注解中提取出取数方法,利用取数方法获取各操作请求对应的操作前后的业务数据。
图2为本申请实施例提供的另一种操作日志记录方法的流程示意图。可选地,如图2所示,上述分别通过各操作请求对应的操作业务接口,获取各操作请求对应的操作前后的业务数据,包括:
S201、在操作业务接口执行前,调用操作业务接口的取数方法获取操作请求对应的操作前的业务数据。
S202、在操作业务接口执行后,调用操作业务接口的取数方法获取操作请求对应的操作后的业务数据。
此示例以一个操作业务接口为例进行说明,其它操作业务接口类似。假设该操作业务接口具体为修改业务接口,修改操作请求为将业务数据1修改为业务数据2的请求,则在修改业务接口接收到该修改操作请求将业务数据1修改为业务数据2之前,可从所对应的注解中提取出预先配置的取数方法,进而利用取数方法从数据库中提取出业务数据1;在修改业务接口接收到该修改操作请求并将业务数据1修改为业务数据2之后,进而再从所对应的注解中提取出预先配置的取数方法,进而利用取数方法从数据库中提取出业务数据2,即可利用注解中的取数方法可获取到修改操作请求对应的修改前后的业务数据,如业务数据1、业务数据2。
图3为本申请实施例提供的又一种操作日志记录方法的流程示意图。可选地,如图3所示,上述由日志生成接口分别对各操作请求对应的操作前后的业务数据进行对比处理,并根据对比处理的结果,生成所有操作请求对应的操作日志,包括:
S301、由日志生成接口分别对各操作请求对应的操作前后的业务数据中的字段进行识别,得到各操作请求对应的字段的信息。
其中,字段的信息包括:字段类型、字段名称和字段值。一种示例性的,字段类型可包括数组类型以及非数据类型,可以理解的是,为数组类型的字段对应的字段值中可包括多个元素,为非数组类型的字段对应的字段值中包括单个元素。
此示例以一个操作请求为例进行说明,其它操作请求类型。在日志生成接口获取到该操作请求对应的操作前后的业务数据后,可首先分别对操作前后的业务数据中的字段进行识别,识别得到该操作前后的业务数据中的字段的信息。可以理解的是,该操作前后的业务数据中属于同一字段名称的字段的字段类型相同,所以此处以操作请求为维度进行说明,可将该操作前后的业务数据中的字段的信息,作为该操作请求对应的字段的信息。同时,由于该操作前后的业务数据中可能包括多个字段,所以该操作请求对应的字段的信息为多个字段的信息,需要说明的是,本申请不对此进行限定。
S302、根据各操作请求对应的字段的信息,分别对各操作请求对应的操作前后的业务数据进行对比处理,并根据比对处理的结果,生成所有操作请求对应的操作日志。
其中,可根据该操作请求对应的各字段的字段类型,对该操作前后的业务数据进行对比处理。也就是说,字段的字段类型不同时,所对应的对比处理方式也不同。举例来说,假设该操作请求对应的操作前后的业务数据中均包括字段1以及字段2,字段1的字段类型属于数组类型,字段2的字段类型属于非数组类型,当对操作前后的业务数据中的字段1对应的字段值进行对比处理时,利用的是预先设置的数组类型对应的对比处理方式策略;当对操作前后的业务数据中的字段2对应的字段值进行对比处理时,利用的是预先设置的非数组类型对应的对比处理方式策略。基于上述对比处理方式,可得到该操作前后的业务数据中的字段1对应的字段值是否变更、字段2对应的字段值是否变更,进而可根据对比处理的结果得到该操作请求的操作日志。可以理解的是,日志生成接口可根据上述描述的方式得到所有操作请求对应的操作日志。
图4为本申请实施例提供的再一种操作日志记录方法的流程示意图。可选地,如图4所示,上述根据各操作请求对应的字段的信息,分别对各操作请求对应的操作前后的业务数据进行对比处理,并根据比对处理的结果,生成所有操作请求对应的操作日志,包括:
S401、若操作请求对应的第一字段的字段类型为数组类型,则将第一字段对应的操作前后的字段值进行对比处理,确定操作前后的字段值是否相同。
此示例继续以一个操作请求为例进行说明,假设该操作请求对应的操作前后的业务数据中包括第一字段,那么当识别出的第一字段的字段类型为数组类型时,可将操作前的业务数据中的第一字段的字段值与操作后的业务数据中的第一字段的字段值进行对比处理,进而可确定出操作前后的业务数据中的第一字段的字段值是否相同。
S402、若操作前后的字段值不同,则将第一字段的字段名称作为键。
若操作前后的业务数据中的第一字段的字段值相同,则跳过,继续对该操作请求对应的操作前后的业务数据中的其它字段的字段值进行对比处理;若操作前后的业务数据中的第一字段的字段值不同,那么可将第一字段的字段名称作为键。
S403、将第一字段对应的操作前后的字段值的各元素进行循环对比,确定操作前后的字段值中不同的元素,并将不同的元素分别作为值。
S404、根据键和值,生成操作请求对应的操作日志。
可以理解的是,为数组类型的第一字段的字段值中包括多个元素,那么在确定出操作前后的业务数据中的第一字段的字段值不同后,可首先将操作前的业务数据中的第一字段的字段值中的第一个元素与操作后的业务数据中的第一字段的字段值中的第一个元素进行比较,若相同则跳过继续对字段值中的下一个元素进行比较,若不同则将操作前的业务数据中的第一字段的字段值中的第一个元素、操作后的业务数据中的第一字段的字段值中的第一个元素分别作为值,在对第一字段的字段值中的第一个元素比较完成后,可继续对第一字段的字段值中的其它元素进行比较,直到将第一字段的字段值中的所有元素均完成比较处理,最后可得到操作前的业务数据中的第一字段的字段值中的不同的元素,可将各不同的元素分别作为值。
在得到键和值后,可生成该操作请求对应的操作日志,其中,该操作请求对应的操作日志中以键值对的方式将第一字段的字段名称以及操作前后的第一字段的字段值中不同的元素进行记录。
可以理解的是,各操作业务接口获取到的操作前后的业务数据为map格式,在得到键与值后,首先可将map格式的键与值转换成json格式的键与值,进而再根据json格式的键与值生成该操作请求对应的操作日志。
图5为本申请实施例提供的一种操作日志记录方法的流程示意图。可选地,如图5所示,上述根据各操作请求对应的字段的信息,分别对各操作请求对应的操作前后的业务数据进行对比处理,并根据比对处理的结果,生成所有操作请求对应的操作日志,包括:
S501、若操作请求对应的第二字段的字段类型为非数组类型,则将第二字段对应的操作前后的字段值进行对比处理,确定操作前后的字段值是否相同。
此示例继续以一个操作请求为例进行说明,假设该操作请求对应的操作前后的业务数据中包括第二字段,那么当识别出的第二字段的字段类型为数组类型时,可将操作前的业务数据中的第二字段的字段值与操作后的业务数据中的第二字段的字段值进行对比处理,进而可确定出操作前后的业务数据中的第二字段的字段值是否相同。
S502、若操作前后的字段值不同,则将第二字段的字段名称作为键,以及将第二字段对应的操作前后的字段值作为值。
S503、根据键和所述值,生成操作请求对应的操作日志。
若操作前后的业务数据中的第二字段的字段值相同,则跳过,继续对该操作请求对应的操作前后的业务数据中的其它字段的字段值进行对比处理;若操作前后的业务数据中的第二字段的字段值不同,那么可将第二字段的字段名称作为键。可以理解的是,为非数组类型的第二字段的字段值中包括单个元素,所以在确定出操作前后的第二字段的字段值不同时,即可确定出操作前后的第二字段的字段值指示的元素不同,那么可直接将第二字段对应的操作前后的字段值作为值。
在得到键和值后,可生成该操作请求对应的操作日志,其中,该操作请求对应的操作日志中以键值对的方式将第二字段的字段名称以及操作前后的第二字段的字段值进行记录。
举例来说,假设操作前的业务数据为{"name":"张三","age":"10"},操作后的业务数据为{"name":"张四","age":"10"},其中,第二字段的字段名称为"name",那么第二字段对应的操作前的字段值为"张三"、对应的操作后的字段值为"张四"。基于此,键即为"name",值分别为操作前第二字段对应的字段值,即"old":"张三"、操作后第二字段对应的字段值,即"new":"张四"。根据上述得到的键和值,可生成该操作请求对应的操作日志,该操作日志中包括:{"name":{"new":"张四","old":"张三"}}。
可选地,该方法还可包括:由日志生成接口将所有操作请求对应的操作日志以及各操作业务接口对应的业务类型和操作类型进行关联,并存储到数据库中。
根据上述描述可知,各操作业务接口均对应有业务类型、操作类型,那么日志生成接口可将其生成的各操作请求对应的操作日志与各操作业务接口均对应有业务类型、操作类型相关联,并存储到数据库中。也就是说,可从业务类型、操作类型等维度对数据库中存储的操作日志进行统一管理。
可选地,该方法还可包括:接收查询请求,查询请求中携带有查询关键字;根据查询关键字以及操作日志的关联信息,从数据库中确定目标操作日志。
其中,日志生成接口将不同操作日志接口获取到的操作前后的业务数据生成操作日志,并将各操作日志以及其对应的业务类型、操作类型关联存储在数据库的公共日志表中。基于此,在接收到携带有查询关键字的查询请求后,可将该查询请求中的查询关键字与公共日志表中的各操作日志对应的业务类型、操作类型进行匹配,将匹配成功的操作日志作为目标操作日志。
可以看出,这样可对操作日志的查询进行统一处理,提高查询效率。
图6为本申请实施例提供的一种操作日志记录装置的结构示意图。如图6所示,该装置可包括:
第一获取模块601,用于获取多个操作请求,操作请求包括增加、修改或删除操作请求;
第二获取模块602,用于分别通过各操作请求对应的操作业务接口,获取各操作请求对应的操作前后的业务数据;
生成模块603,用于将各操作请求对应的操作前后的业务数据输入日志生成接口,由日志生成接口分别对各操作请求对应的操作前后的业务数据进行对比处理,并根据比对处理的结果,生成所有操作请求对应的操作日志,其中,对比处理的结果用于指示业务数据的变更情况。
可选地,该装置还包括:配置模块;
该配置模块,用于根据各操作业务接口的属性信息,配置各操作业务接口的业务类型、操作类型以及取数方法,取数方法用于指示获取各操作请求对应的操作前后的业务数据的方法。
可选地,第二获取模块602,具体用于在操作业务接口执行前,调用操作业务接口的取数方法获取操作请求对应的操作前的业务数据;在操作业务接口执行后,调用操作业务接口的取数方法获取各操作请求对应的操作后的业务数据。
可选地,生成模块603,具体用于由日志生成接口分别对各操作请求对应的操作前后的业务数据中的字段进行识别,得到各操作请求对应的字段的信息,字段的信息包括:字段类型、字段名称和字段值;根据各操作请求对应的字段的信息,分别对各操作请求对应的操作前后的业务数据进行对比处理,并根据比对处理的结果,生成所有操作请求对应的操作日志。
可选地,生成模块603,还具体用于若操作请求对应的第一字段的字段类型为数组类型,则将第一字段对应的操作前后的字段值进行对比处理,确定操作前后的字段值是否相同;若操作前后的字段值不同,则将第一字段的字段名称作为键;将第一字段对应的操作前后的字段值的各元素进行循环对比,确定操作前后的字段值中不同的元素,并将不同的元素分别作为值;根据键和值,生成操作请求对应的操作日志。
可选地,生成模块603,还具体用于若操作请求对应的第二字段的字段类型为非数组类型,则将第二字段对应的操作前后的字段值进行对比处理,确定操作前后的字段值是否相同;若操作前后的字段值不同,则将第二字段的字段名称作为键,以及将第二字段对应的操作前后的字段值作为值;根据键和值,生成操作请求对应的操作日志。
可选地,该装置还包括:关联模块;
该关联模块,用于由日志生成接口将所有操作请求对应的操作日志以及各操作业务接口对应的业务类型和操作类型进行关联,并存储到数据库中。
可选地,该装置还包括:查询模块;
该查询模块接收查询请求,查询请求中携带有查询关键字;根据查询关键字以及操作日志的关联信息,从数据库中确定出目标操作日志。
上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。
以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器(Digital Signal Processor,简称DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(CentralProcessing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称SOC)的形式实现。
图7为本申请实施例提供的一种电子设备的结构示意图,如图7所示,该电子设备可以包括:处理器701、存储介质702和总线703,存储介质702存储有处理器701可执行的机器可读指令,当该电子设备运行时,处理器701与存储介质702之间通过总线703通信,处理器701执行机器可读指令,以执行上述方法实施例的步骤。具体实现方式和技术效果类似,这里不再赘述。
可选地,本申请还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器运行时执行上述方法实施例的步骤。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本申请各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取存储器(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (11)
1.一种操作日志记录方法,其特征在于,所述方法包括:
获取多个操作请求,所述操作请求包括增加、修改或删除操作请求;
分别通过各所述操作请求对应的操作业务接口,获取各所述操作请求对应的操作前后的业务数据;
将各所述操作请求对应的操作前后的业务数据输入日志生成接口,由所述日志生成接口分别对各所述操作请求对应的操作前后的业务数据进行对比处理,并根据比对处理的结果,生成所有操作请求对应的操作日志,其中,所述对比处理的结果用于指示业务数据的变更情况。
2.根据权利要求1所述的方法,其特征在于,所述分别通过各所述操作请求对应的操作业务接口,获取各所述操作请求对应的操作前后的业务数据之前,所述方法还包括:
根据各所述操作业务接口的属性信息,配置各所述操作业务接口的业务类型、操作类型以及取数方法,所述取数方法用于指示获取各所述操作请求对应的操作前后的业务数据的方法。
3.根据权利要求2所述的方法,其特征在于,所述分别通过各所述操作请求对应的操作业务接口,获取各所述操作请求对应的操作前后的业务数据,包括:
在所述操作业务接口执行前,调用所述操作业务接口的取数方法获取操作请求对应的操作前的业务数据;
在所述操作业务接口执行后,调用所述操作业务接口的取数方法获取各所述操作请求对应的操作后的业务数据。
4.根据权利要求1所述的方法,其特征在于,所述由所述日志生成接口分别对各所述操作请求对应的操作前后的业务数据进行对比处理,并根据对比处理的结果,生成所有操作请求对应的操作日志,包括:
由所述日志生成接口分别对各所述操作请求对应的操作前后的业务数据中的字段进行识别,得到各所述操作请求对应的字段的信息,所述字段的信息包括:字段类型、字段名称和字段值;
根据各所述操作请求对应的字段的信息,分别对各所述操作请求对应的操作前后的业务数据进行对比处理,并根据比对处理的结果,生成所有操作请求对应的操作日志。
5.根据权利要求4所述的方法,其特征在于,所述根据各所述操作请求对应的字段的信息,分别对各所述操作请求对应的操作前后的业务数据进行对比处理,并根据比对处理的结果,生成所有操作请求对应的操作日志,包括:
若所述操作请求对应的第一字段的字段类型为数组类型,则将所述第一字段对应的操作前后的字段值进行对比处理,确定操作前后的字段值是否相同;
若所述操作前后的字段值不同,则将所述第一字段的字段名称作为键;
将所述第一字段对应的操作前后的字段值的各元素进行循环对比,确定所述操作前后的字段值中不同的元素,并将所述不同的元素分别作为值;
根据所述键和所述值,生成所述操作请求对应的操作日志。
6.根据权利要求4所述的方法,其特征在于,所述根据各所述操作请求对应的字段的信息,分别对各所述操作请求对应的操作前后的业务数据进行对比处理,并根据比对处理的结果,生成所有操作请求对应的操作日志,包括:
若所述操作请求对应的第二字段的字段类型为非数组类型,则将所述第二字段对应的操作前后的字段值进行对比处理,确定操作前后的字段值是否相同;
若所述操作前后的字段值不同,则将所述第二字段的字段名称作为键,以及将所述第二字段对应的操作前后的字段值作为值;
根据所述键和所述值,生成所述操作请求对应的操作日志。
7.根据权利要求2所述的方法,其特征在于,所述方法还包括:
由所述日志生成接口将所有操作请求对应的操作日志以及各所述操作业务接口对应的业务类型和操作类型进行关联,并存储到数据库中。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
接收查询请求,所述查询请求中携带有查询关键字;
根据所述查询关键字以及操作日志的关联信息,从所述数据库中确定出目标操作日志。
9.一种操作日志记录装置,其特征在于,所述装置包括:
第一获取模块,用于获取多个操作请求,所述操作请求包括增加、修改或删除操作请求;
第二获取模块,用于分别通过各所述操作请求对应的操作业务接口,获取各所述操作请求对应的操作前后的业务数据;
生成模块,用于将各所述操作请求对应的操作前后的业务数据输入日志生成接口,由所述日志生成接口分别对各所述操作请求对应的操作前后的业务数据进行对比处理,并根据比对处理的结果,生成所有操作请求对应的操作日志,其中,所述对比处理的结果用于指示业务数据的变更情况。
10.一种电子设备,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当所述电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如权利要求1-8任一项所述操作日志记录方法的步骤。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1-8任一项所述操作日志记录方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211504602.1A CN115544050A (zh) | 2022-11-29 | 2022-11-29 | 操作日志记录方法、装置、设备及存储介质 |
CN202310269379.5A CN116204540A (zh) | 2022-11-29 | 2023-03-13 | 操作日志记录方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211504602.1A CN115544050A (zh) | 2022-11-29 | 2022-11-29 | 操作日志记录方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115544050A true CN115544050A (zh) | 2022-12-30 |
Family
ID=84721596
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211504602.1A Withdrawn CN115544050A (zh) | 2022-11-29 | 2022-11-29 | 操作日志记录方法、装置、设备及存储介质 |
CN202310269379.5A Pending CN116204540A (zh) | 2022-11-29 | 2023-03-13 | 操作日志记录方法、装置、设备及存储介质 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310269379.5A Pending CN116204540A (zh) | 2022-11-29 | 2023-03-13 | 操作日志记录方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN115544050A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070220081A1 (en) * | 2006-03-15 | 2007-09-20 | Mog, Inc | Override of automatically shared meta-data of media |
CN104598622A (zh) * | 2015-02-02 | 2015-05-06 | 浪潮软件股份有限公司 | 一种数据修改日志的实现方法和系统及应用服务器 |
CN106980638A (zh) * | 2016-09-29 | 2017-07-25 | 阿里巴巴集团控股有限公司 | 操作记录系统、方法和操作对象变更信息查询方法 |
CN112882900A (zh) * | 2021-02-26 | 2021-06-01 | 山东浪潮通软信息科技有限公司 | 一种记录业务数据变更日志的方法及设备 |
CN113220762A (zh) * | 2021-05-06 | 2021-08-06 | 普元信息技术股份有限公司 | 大数据应用中实现关键业务字段变更的通用记录处理的方法、装置、处理器及其存储介质 |
CN113608955A (zh) * | 2021-06-30 | 2021-11-05 | 北京新氧科技有限公司 | 一种日志记录方法、装置、设备及存储介质 |
CN113849473A (zh) * | 2021-09-17 | 2021-12-28 | 重庆京东方智慧科技有限公司 | 操作记录方法、装置、电子设备及存储介质 |
-
2022
- 2022-11-29 CN CN202211504602.1A patent/CN115544050A/zh not_active Withdrawn
-
2023
- 2023-03-13 CN CN202310269379.5A patent/CN116204540A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070220081A1 (en) * | 2006-03-15 | 2007-09-20 | Mog, Inc | Override of automatically shared meta-data of media |
CN104598622A (zh) * | 2015-02-02 | 2015-05-06 | 浪潮软件股份有限公司 | 一种数据修改日志的实现方法和系统及应用服务器 |
CN106980638A (zh) * | 2016-09-29 | 2017-07-25 | 阿里巴巴集团控股有限公司 | 操作记录系统、方法和操作对象变更信息查询方法 |
CN112882900A (zh) * | 2021-02-26 | 2021-06-01 | 山东浪潮通软信息科技有限公司 | 一种记录业务数据变更日志的方法及设备 |
CN113220762A (zh) * | 2021-05-06 | 2021-08-06 | 普元信息技术股份有限公司 | 大数据应用中实现关键业务字段变更的通用记录处理的方法、装置、处理器及其存储介质 |
CN113608955A (zh) * | 2021-06-30 | 2021-11-05 | 北京新氧科技有限公司 | 一种日志记录方法、装置、设备及存储介质 |
CN113849473A (zh) * | 2021-09-17 | 2021-12-28 | 重庆京东方智慧科技有限公司 | 操作记录方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116204540A (zh) | 2023-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108874926B (zh) | 海量数据查询方法、装置、计算机设备和存储介质 | |
CN109997126B (zh) | 事件驱动提取、变换、加载(etl)处理 | |
CN107220142B (zh) | 执行数据恢复操作的方法及装置 | |
RU2343537C2 (ru) | Компьютерный поиск с помощью ассоциативных связей | |
JP4608522B2 (ja) | ファイル管理システム | |
AU2013329525C1 (en) | System and method for recursively traversing the internet and other sources to identify, gather, curate, adjudicate, and qualify business identity and related data | |
CN112882699B (zh) | 基于流程配置引擎的业务处理方法、装置、设备及介质 | |
CN112685433B (zh) | 元数据更新方法、装置、电子设备及计算机可读存储介质 | |
CN112613917A (zh) | 基于用户画像的信息推送方法、装置、设备及存储介质 | |
CN111078559B (zh) | java代码中函数调用的提取方法、装置、介质及计算机设备 | |
CN108134696A (zh) | 一种微服务配置更新方法及装置 | |
CN113157315A (zh) | 一种软件不同版本的差异信息识别方法、装置、设备及介质 | |
CN115237857A (zh) | 日志处理方法、装置、计算机设备及存储介质 | |
CN115543198A (zh) | 非结构化数据入湖方法、装置、电子设备及存储介质 | |
CN110245059B (zh) | 一种数据处理方法、设备及存储介质 | |
CN110941629A (zh) | 元数据处理方法、装置、设备及计算机可读存储介质 | |
CN116414854A (zh) | 数据资产查询方法、装置、计算机设备和存储介质 | |
CN115544050A (zh) | 操作日志记录方法、装置、设备及存储介质 | |
CN113434585B (zh) | 资源保存方法及设备 | |
US10031811B1 (en) | Systems and methods for enhancing electronic discovery searches | |
CN114281688A (zh) | 一种无码或低码的自动化用例管理方法和装置 | |
CN112035471A (zh) | 一种事务处理方法及计算机设备 | |
CN110851517A (zh) | 一种源数据抽取方法、装置、设备及计算机存储介质 | |
CN111311329B (zh) | 标签数据获取方法、装置、设备及可读存储介质 | |
CN115052035B (zh) | 消息推送方法、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20221230 |