业务操作留痕记录的获取方法及业务系统技术方案

技术编号:35816991 阅读:16 留言:0更新日期:2022-12-03 13:41
本发明专利技术提出了一种业务操作留痕记录的获取方法及业务系统,获取方法包括:在业务系统的前端业务功能对应的Controller层的服务方法上增加自定义注解,在业务系统的后端应用集成一个sdk;对于业务系统的业务操作的数据留痕,通过所述自定义注解在sdk中异步处理保存到数据库。本发明专利技术针对政府部门在使用业务系统时需要把某些主要功能业务以及登录退出的数据留痕,并且可以追踪具体人和客户端电脑。业务系统集成方便只需要一个sdk和一行代码,不需要在原有代码里增加非业务处理的代码,对原有系统代码侵入性小,可以把业务数据包括用户名和客户端IP留痕保存到存储介质,并可可视化展示出来给客户,便于责任定位到人,也可以查看业务的响应效率。看业务的响应效率。看业务的响应效率。

【技术实现步骤摘要】
业务操作留痕记录的获取方法及业务系统


[0001]本专利技术涉及产业数字化
,尤其涉及一种业务操作留痕记录的获取方法及业务系统。

技术介绍

[0002]国家在城市治理远景目标要明确提出要加快数字化发展,打造数字经济新优势,协同推进数字产业化和产业数字化转型,加快数字社会建设步伐。政府各个部门都在建设对应的信息业务系统来加快推进数字化办公,由之前的各项业务办理中的所有环节完全靠人转变为大部分环节在线上办理,所有信息的维护都是通过线上系统来填写。
[0003]之前没有数字化系统时,各个业务的办理涉及到数据信息的维护都是通过实体纸张来,然后再把这些纸张封存到档案室。现在政府部门在各项业务的办理都是在电子系统中通过新增、修改、删除等操作来维护数据,每次操作数据的痕迹也要保留记录下,以便在后期需要的时候可以提供出来。从而我们就需要把用户从登录到在系统中某些业务办理以及退出的留痕记录给保存到数据库或者其他存储介质。在某些时候因为个人在业务系统上的操作导致不良的后果,需要定位到具体人提供依据。
[0004]相关技术中,用户在系统的业务在数据库都会有对应的表来存储办理中生成的业务数据,技术人员就可以在系统部署落地时,把数据库部署架构设计为集群或者主备模式,即多台服务器之间同步存储,这样不仅可以保证数据库的高可用,还可以实现表数据的实时备份。因为用户在系统某个模块办理业务的过程中会导致对应的表数据有变化,可能新增数据,可能更新数据,也可能删除数据,在这些数据变化的过程中就会把之前的数据痕迹备份下来。
[0005]上述技术手段存在如下缺陷:
[0006]通过数据库自身机制来记录操作痕迹,备份的数据不具备可读性。因为表设计的技术性很强,只有专业技术人员才能看懂,普通的政府业务职员根本无法看懂,不具备可读性。业务系统正式上线后进入运行时期,不可能一遇到数据问题就去找软件公司来支撑,这都是需要花费大量的费用成本。数据库自身的备份机制都是为了防止运行过程中出现重大故障导致数据丢失。再者数据库自身的数据备份根本无法定位到是哪个账号哪个电脑操作系统,无法把责任定位到具体的人身上。
[0007]另有相关技术中,用户在系统的业务在数据库都会有对应的表来存储办理中生成的业务数据,系统前端业务在增删改的时候都会调用后端应用服务,后端程序的Service层处理完相应的业务逻辑会把业务数据入库,待业务数据入库成功后再写一段业务逻辑把前端请求后端服务的数据痕迹记录(系统名称、功能模块名称、用户名称、客户端IP、痕迹数据内容、服务耗时、请求服务、操作类型等主要字段)保存到表里。通过这种方式也可以把用户操作业务功能的痕迹记录下来。
[0008]上述技术手段存在如下缺陷:
[0009]对现有系统代码侵入性太大,只要想在某个业务的增删改等操作增加痕迹留存,
都需要在对应的后端应用服务的Service层业务逻辑新写一段程序。都需要增加不少的工作量,如果客户想在某几个关键业务的操作留痕,这种方式还可以接受,假如客户想在某几十个业务的操作都留痕,工作量增加了N倍,而且还可能存在影响原有业务逻辑正常执行的风险。

技术实现思路

[0010]本专利技术要解决的技术问题是如何在不影响业务系统性能的情况下实现业务系统操作留痕记录,本专利技术提出一种业务操作留痕记录的获取方法及业务系统。
[0011]根据本专利技术实施例的业务操作留痕记录的获取方法,包括:
[0012]在业务系统的前端业务功能对应的Controller层的服务方法上增加自定义注解,在业务系统的后端应用集成一个sdk;
[0013]对于业务系统的业务操作的数据留痕,通过所述自定义注解在sdk中异步处理保存到数据库。
[0014]根据本专利技术的一些实施例,所述sdk里定义有数据留痕记录实体对象,所述数据留痕记录实体对象的属性包括系统名称、功能模块名称、用户名称、客户端IP、痕迹数据内容、服务耗时、请求服务及操作类型。
[0015]在本专利技术的一些实施例中,通过Spring的AOP面向切面@Aspect来获取封装所述数据留痕记录实体对象的属性值。
[0016]根据本专利技术的一些实施例,对于业务系统的业务操作的数据留痕,通过所述自定义注解在sdk中异步处理保存到数据库的方法具体包括:
[0017]在sdk中定义LogControllerAsp类,使用@Pointcut注解来拦截Controller层的带有自定义注解的服务,在@AfterReturning注解的方法里获取业务数据留痕记录,用户名从MDC中动态获取,客户端IP从服务的请求头获取,把获取的所有业务操作留痕数据封装到所述数据留痕记录实体对象里异步保存。
[0018]在本专利技术的一些实施例中,所述自定义注解的属性包括:系统名、功能模块名、操作类型。
[0019]根据本专利技术实施例的具有业务操作留痕记录功能的业务系统,所述业务系统的前端业务功能对应的Controller层的服务方法上具有自定义注解,所述业务系统的后端应用集成有一个sdk;
[0020]对于业务系统的业务操作的数据留痕,通过所述自定义注解在sdk中异步处理保存到数据库。
[0021]根据本专利技术的一些实施例,所述sdk里定义有数据留痕记录实体对象,所述数据留痕记录实体对象的属性包括系统名称、功能模块名称、用户名称、客户端IP、痕迹数据内容、服务耗时、请求服务及操作类型。
[0022]在本专利技术的一些实施例中,通过Spring的AOP面向切面@Aspect来获取封装所述数据留痕记录实体对象的属性值。
[0023]根据本专利技术的一些实施例,对于业务系统的业务操作的数据留痕,通过所述自定义注解在sdk中异步处理保存到数据库的方法具体包括:
[0024]在sdk中定义LogControllerAsp类,使用@Pointcut注解来拦截Controller层的带
有自定义注解的服务,在@AfterReturning注解的方法里获取业务数据留痕记录,用户名从MDC中动态获取,客户端IP从服务的请求头获取,把获取的所有业务操作留痕数据封装到所述数据留痕记录实体对象里异步保存。
[0025]在本专利技术的一些实施例中,所述自定义注解的属性包括:系统名、功能模块名、操作类型。
[0026]本专利技术提出的业务操作留痕记录的获取方法及业务系统具有如下有益效果:
[0027]本专利技术针对政府部门在使用业务系统时需要把某些主要功能业务以及登录退出的数据留痕,并且可以追踪具体人和客户端电脑。业务系统集成方便只需要一个sdk和一行代码,不需要在原有代码里增加非业务处理的代码,对原有系统代码侵入性小,可以把业务数据包括用户名和客户端IP留痕保存到存储介质,并可可视化展示出来给客户,便于责任定位到人,也可以查看业务的响应效率。
附图说明
[0028]图1为根据本专利技术实施例的业务操作留痕记录的获取方法流程图;
[0029]图2为根据本专利技术实施例的业务操作留痕记录的获本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种业务操作留痕记录的获取方法,其特征在于,包括:在业务系统的前端业务功能对应的Controller层的服务方法上增加自定义注解,在业务系统的后端应用集成一个sdk;对于业务系统的业务操作的数据留痕,通过所述自定义注解在sdk中异步处理保存到数据库。2.根据权利要求1所述的业务操作留痕记录的获取方法,其特征在于,所述sdk里定义有数据留痕记录实体对象,所述数据留痕记录实体对象的属性包括系统名称、功能模块名称、用户名称、客户端IP、痕迹数据内容、服务耗时、请求服务及操作类型。3.根据权利要求2所述的业务操作留痕记录的获取方法,其特征在于,通过Spring的AOP面向切面@Aspect来获取封装所述数据留痕记录实体对象的属性值。4.根据权利要求2所述的业务操作留痕记录的获取方法,其特征在于,对于业务系统的业务操作的数据留痕,通过所述自定义注解在sdk中异步处理保存到数据库的方法具体包括:在sdk中定义LogControllerAsp类,使用@Pointcut注解来拦截Controller层的带有自定义注解的服务,在@AfterReturning注解的方法里获取业务数据留痕记录,用户名从MDC中动态获取,客户端IP从服务的请求头获取,把获取的所有业务操作留痕数据封装到所述数据留痕记录实体对象里异步保存。5.根据权利要求1

4中任一项所述的业务操作留痕记录的获取方法,其特征在于,所述自定义注解的属性包括:系统名、功能模块名、操作类型。6.一种具有业务操作留痕记录...

【专利技术属性】
技术研发人员:史俊伟
申请(专利权)人:中国电子系统技术有限公司
类型:发明
国别省市:

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

1