一种日志提取方法和装置与流程

文档序号:25279903发布日期:2021-06-01 17:26阅读:78来源:国知局
一种日志提取方法和装置与流程

本发明涉及计算机程序技术领域,具体涉及一种日志提取方法和装置。



背景技术:

银行内一笔交易的完成往往需要涉及多个系统,逐层上送请求和接收反馈结果需要较长的交互链路,每个交易涉及不同多系统间的交互,下游日志查询一笔流水时依赖于上游系统的日志中的流水号字段作为唯一追踪标识,在定位问题或查看字段传递是否正确时,普通的以系统为单位人工进行查询,下游日志的查询需要借助于上游的响应报文中的流水号,进而造成逐一查询耗时久,查询效率低,当有大量链路日志查询工作会占用大量人力资源;且现存全链路日志查询专利需要对跟踪id进行处理,或将id相关日志进行大量聚合和解析才能得出串联的全链路日志,这种方式维护成本高而且易用性较低。



技术实现要素:

本申请的目的旨在至少能解决上述的技术缺陷之一。本申请所采用的技术方案如下:

第一方面,本申请实施例公开了一种日志提取方法,所述方法包括:

输入目标交易流水号;

根据交易系统配置信息,利用所述目标交易流水号查询到所有交易系统中存储的目标日志;其中所述目标日志中包含有目标交易流水号;

提取查询到的所有目标日志。

进一步地,所述交易系统配置信息的配置过程包括:

配置所述目标交易的交易链路关联系统和交易链路标识;

配置所述交易链路中每一个系统的交易日志存储路径和交易日志标识;其中所述交易链路标识和交易日志标识均为目标交易流水号字段。

进一步地,所述交易系统配置信息的配置过程还包括:

配置所述每一个系统的日志筛选规则;和/或,

配置所述交易系统的交易环境信息;和/或

配置用户登录所述交易系统服务器的认证信息。

进一步地,所述方法还包括:

接收用户输入的交易码和查询时间范围;其中所述目标交易的交易码与所述用户输入的交易码相同;

根据所述用户输入的信息,查询并获取所述时间范围内所有具有同一交易码的交易日志。

进一步地,所述方法还包括:根据目标交易流水号,在查询到的查询时间范围内所有具有同一交易码的交易日志中获取具有所述目标交易流水号字段标识的目标交易日志。

进一步地,所述方法还包括将所述获取的目标交易日志按照所述配置的交易链路系统关联关系进行显示。

进一步地,所述利用所述目标交易流水号查询到所有交易系统中存储的目标日志还包括:

编辑shell脚本与交易链路系统进行交互;其中所述交互过程包括:

编辑cd命令根据所述交易链路系统的配置的交易日志路径进入所述交易日志存储区;

编辑grep命令按照所述交易码和目标交易流水号在所述存储区内的交易日志中查询目标交易日志。

第二方面,本申请实施例提供了一种日志提取装置,所述装置包括:

输入模块、配置模块、查询模块和提取模块;其中,

所述输入模块,用于输入目标交易流水号;

所述配置模块,用于配置交易系统的配置信息;

所述查询模块,用于利用所述目标交易流水号查询到所有交易系统中存储的目标日志;其中所述目标日志中包含有目标交易流水号;

所述提取模块,用于提取查询到的所有目标日志。

第三方面,本申请实施例提供了一种电子设备,包括处理器和存储器;

所述存储器,用于存储操作指令;

所述处理器,用于通过调用所述操作指令,执行上述任一实施例中所述的方法。

第四方面,本申请实施例提供了一种计算机可读存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一实施例所述的方法。

本申请实施例提供日志提取方案通过将配置交易链路关联系统,并在配置关联系统中将交易流水号字段作为交易链路关联配置的唯一标识,实现了全链路日志查询的配置化,即只需要在配置模块中对交易环境和查询环境等常规参数进行配置就可实现通过交易码+链路标志完成交易链路系统中具体交易(每一笔具体交易的唯一标识就是交易流水号)的交易日志的查询和提取,实现了一键获取全链路日志的效果,从而节省上下游间定位交易流水耗时、查询日志复杂,学习成本高等问题,且具有普适性,金融相关行业都能直接使用,能够快速、准确的定位出日志信息从而提高工作效率。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。

图1为本申请实施例提供的一种日志提取方法的流程示意图;

图2为本申请实施例提供的一种日志提取方法的流程示意图;

图3为本申请实施例提供的一种日志提取装置的示意图;

图4为本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本发明的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式,其中的“第一”“第二”等只是为了介绍清楚方案而进行的对象区分定义,并不对对象本身进行限制,当然“第一”和“第二”限定的对象可能是同一个终端、设备和用户等,也可能是同一种终端、设备和用户。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。此外应理解,本申请实施例中“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b的情况,其中a、b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一(项)个”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a、b或c中的至少一项(个),可以表示:a,b,c,a和b,a和c,b和c,或a、b和c,其中a、b、c可以是单个,也可以是多个。

正如背景技术中所陈述的目前银行内跨系统长链路交易在定位问题或查看字段传递是否正确时普通的以系统为单位人工进行查询,下游日志的查询需要借助于上游的响应报文中的流水号,进而造成逐一查询耗时久,查询效率低,当有大量链路日志查询工作会占用大量人力资源;且现存全链路日志查询专利需要对跟踪id进行处理,或将id相关日志进行大量聚合和解析才能得出串联的全链路日志,方法维护成本、学习成本及易用性较低。因此,仅通过配置跟踪id及测试环境能够快速、准确的得出全链路日志成为银行业解放人力,准确查询相关日志的刚需。基于此,本申请实施例他的日志提取方案可以自动根据上下游交易间日志查询的依赖关系快速查询全链路日志信息。基于此,本申请提供的日志提取方案通过简单、易操作的前置测试环境及查询关键字配置的操作从而实现一键查询并提取全交易链路的日志信息的功能。

需要说明的是在下述实施例中“交易码”是指交易系统或交易服务器的某一种交易接口的标识。例如向服务器请求的转账交易则是通过服务器的转账交易接口进行的,同一个交易接口只有一个交易码,但是同一个交易接口可以发生很多笔交易,即通过转账交易接口的所有转账交易具有均有同一个交易码,但是每一笔转账交易均是一笔独立的业务因此每一笔交易均有交易业务流水号,可以简称为交易流水号。

图1示出了本申请实施例提供的一种日志提取的流程示意图,如图1所示,该方法主要可以包括:

s101、输入目标交易流水号;

s102、根据交易系统配置信息,利用所述目标交易流水号查询到所有交易系统中存储的目标日志;其中所述目标日志中包含有目标交易流水号;

在本申请实施例中,可以在交易系统的配置模块中预先配置交易系统参数,配置的参数和信息包括但不限于以下至少之一:

(1)配置所述目标交易的交易链路关联系统和交易链路标识;在本申请实施例中以交易流水号字段作为交易链路标识,将交易链路中的每一个系统关联起来。例如一笔转账交易的链路为a-b-c-d系统,(即从a系统发起到d系统结束),则将这个交易链路配置为a(交易流水号字段)-b(交易流水号字段)-c(交易流水号字段)-d(交易流水号字段)。交易链路标识用于识别同笔流水。

(2)配置所述交易链路中每一个系统的交易日志存储路径和交易日志标识;交易日志标识均为目标交易流水号字段,用于登录服务器后进入目标日志路径,针对目标日志文件进行筛选。

(3)配置所述每一个系统的日志筛选规则,如字符串位数或转换等处理,截取上下文文本匹配或条数等规则,作为日志查询时的辅助条件等配置。

(4)配置所述交易系统的交易环境信息;

(5)配置用户登录所述交易系统服务器的认证信息。例如,配置进行交易系统目标服务器身份验证信息如用户名、端口、密码、对应测试环境等,以实现在用户发起查询操作时,建立与服务器的依次自动链接,自动登录;通过系统关联关系建立上下游交互系统,用于识别前后衔接关系。

上述所有配置均可以进行自定义修改且实时生效,在配置后下一次查询时立即按新配置进行日志采集

s103、提取查询到的所有目标日志。

图2示出了优选实施例提供的一种日志提取的流程示意图,如图2所示,该方法主要可以包括:

s201、按照上述s102的方式配置交易系统配置信息,配置内容与上述相同,在此不再赘述。

s202、接收用户输入的交易码和查询时间范围;其中所述目标交易的交易码与所述用户输入的交易码相同;

s203、查询并获取所述时间范围内所有具有同一交易码的交易日志。

s204、根据目标交易流水号,在查询到的查询时间范围内所有具有同一交易码的交易日志中获取具有所述目标交易流水号字段标识的目标交易日志。具体查询过程为:

步骤1、编辑shell脚本与交易链路系统进行交互;其中所述交互过程包括:

步骤2、编辑cd命令根据所述交易链路系统的配置的交易日志路径进入所述交易日志存储区;cd命令是指计算机中dos命令,意为打开指定目录命令。

步骤3、编辑grep命令(grep是查找含有指定文本行的意思,比如greptest就是查找含有test的文本的行)按照所述交易码和目标交易流水号在所述存储区内的交易日志中查询目标交易日志。具体的实现过程为:首先利用交易码将该查询时间范围内所有具有同一交易码的全链路日志输出并保存在存储中心,存储中心的数据库可以为mysql关系型数据库;其次根据目标交易的交易流水号在输出的全链路日志中的流水号字段中进行搜索匹配,输出的日志中配置有唯一标识字段,获取交易发起系统响应报文日志对应唯一字段的值,查找交易链中下一系统关联日志,判断是否有下游节点系统:没有则代表已经查询到链路末端日志,则进行日志整合输出,若有则循环步骤直至完成全链路日志搜索整合输出全链路日志。

s205、提取查询到的所有目标日志。将查询到的交易链路目标日志进行日志整合并提取从而实现一键查询目标交易链路日志。

s206、将所述获取的目标交易日志按照所述配置的交易链路系统关联关系进行显示。在显示界面实时根据查询规则将日志可视化展示,在本申请实施例中支持展示交易单系统及交易跨系统全链路日志的请求日志和响应日志展示。

实现上述实施例在技术架构上整个系统由七个部分组成,分别为界面显示层、前置交互层、参数配置层、数据存储模块、登录模块、日志处理模块、后置逻辑模块。

2)界面显示层:负责前端页面的展示,包括日志输出及参数的选择等。

3)前置逻辑层、交互层:负责分发来自界面层的相关请求,同时查询类相关的逻辑功能写在该层。

4)参数配置层:单独的参数配置平台,可以进行堡垒机、服务器、上下游交互关系、日志存储形式/参数,追踪交易链路标识字段等的配置,该配置区别于交互层的查询类参数,通常用于配置半固态参数值。

5)数据存储:采用mysql数据库,通过java的hibernate+jpa进行数据交互。

6)登录模块:支持对于服务器的两种访问模式,常态下的ssh登录模式,以及存在堡垒机等相关权限壁垒时可采用的except登录模式。

7)日志处理模块:主要包括日志搜索、日志过滤、日志提取功能。

a.日志搜索。负责定位服务器中日志文件的目的地,同时确定搜索日志文件的大致范围。

b.日志过滤。包含基础过滤以及智能过滤,基础过滤通过多级条件搜索定位输出日志。智能过滤可以实现多级条件下的降级搜索,在搜索结果为空时,自动降级,增加搜索成功率。同时搜索策略默认会扩大时间精度,在更大的精度下查找,避免测试人员输入参数不准确造成的过滤数据为空。

c.日志提取。从输出日志中,提取关键字(交易流水号、用户ip等),用来进行后置日志的搜索。

8)后置搜索逻辑。用来判断交易是否有后续交易,以及数据分析功能。如果有进行第二轮的循环查询,如果没有,则进行数据分析后输出。

基于图1所示的日志提取方法,另一方面本申请实施例提供了一种日志提取装置,所述装置如图3所示,所述装置可以包括:301输入模块、302配置模块、303查询模块和304提取模块;其中,

所述301输入模块,用于输入目标交易流水号;

所述302配置模块,用于配置交易系统的配置信息;

所述303查询模块,用于利用所述目标交易流水号查询到所有交易系统中存储的目标日志;其中所述目标日志中包含有目标交易流水号;

所述304提取模块,用于提取查询到的所有目标日志。

可以理解的是,本实施例中的日志提取装置的上述各组成设备具有实现图1和图2中所示的实施例中的方法相应步骤的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块或系统。上述模块和系统可以是软件和/或硬件,上述各模块和系统可以单独实现,也可以多个模块和系统集成实现。对于上述各模块和系统的功能描述具体可以参见图1和图2中所示实施例中的方法的对应描述,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。

可以理解的是,本发明实施例示意的结构并不构成对日志提取装置的具体结构的具体限定。在本申请另一些实施例中,日志提取装置可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。

本申请实施例提供了一种电子设备,包括处理器和存储器;

存储器,用于存储操作指令;

处理器,用于通过调用操作指令,执行本申请任一实施方式中所提供的日志提取方法。

作为一个示例,图4示出了本申请实施例所适用的一种电子设备的结构示意图,如图4所示,该电子设备400包括:处理器401和存储器403。其中,处理器401和存储器403相连,如通过总线402相连。可选的,电子设备400还可以包括收发器404。需要说明的是,实际应用中收发器404不限于一个。可以理解的是,本发明实施例示意的结构并不构成对电子设备400的具体结构的具体限定。在本申请另一些实施例中,电子设备400可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实。可选地,电子设备还可以包括显示屏405,用于显示图像,或需要时接收用户的操作指令。

其中,处理器401应用于本申请实施例中,用于实现上述方法实施例所示的方法。收发器404可以包括接收机和发射机,收发器404应用于本申请实施例中,用于执行时实现本申请实施例的电子设备与其他设备通信的功能。

处理器401可以是cpu(centralprocessingunit,中央处理器),通用处理器,dsp(digitalsignalprocessor,数据信号处理器),asic(applicationspecificintegratedcircuit,专用集成电路),fpga(fieldprogrammablegatearray,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器401也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等。

处理器401也可以包括一个或多个处理单元,例如:处理器401可以包括应用处理器(applicationprocessor,ap),调制解调处理器,图形处理器(graphicsprocessingunit,gpu),图像信号处理器(imagesignalprocessor,isp),控制器,存储器,视频编解码器,数字信号处理器(digitalsignalprocessor,dsp),基带处理器,和/或神经网络处理器(neural-networkprocessingunit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。其中,控制器可以是电子设备400的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。处理器401中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器401中的存储器为高速缓冲存储器。该存储器可以保存处理器401刚用过或循环使用的指令或数据。如果处理器401需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器401的等待时间,因而提高了系统的效率。

处理器401可以运行本申请实施例提供的日志提取方法,以便于降低用户的操作复杂度、提高终端设备的智能化程度,提升用户的体验。处理器401可以包括不同的器件,比如集成cpu和gpu时,cpu和gpu可以配合执行本申请实施例提供的日志提取方法,比如日志提取方法中部分算法由cpu执行,另一部分算法由gpu执行,以得到较快的处理效率。

总线402可包括一通路,在上述组件之间传送信息。总线402可以是pci(peripheralcomponentinterconnect,外设部件互连标准)总线或eisa(extendedindustrystandardarchitecture,扩展工业标准结构)总线等。总线402可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

存储器403可以是rom(readonlymemory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,ram(randomaccessmemory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是eeprom(electricallyerasableprogrammablereadonlymemory,电可擦可编程只读存储器)、cd-rom(compactdiscreadonlymemory,只读光盘),也可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universalflashstorage,ufs),或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。

可选的,存储器403用于存储执行本申请方案的应用程序代码,并由处理器401来控制执行。处理器401用于执行存储器403中存储的应用程序代码,以实现本申请任一实施方式中所提供的日志提取方法。

存储器403可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器401通过运行存储在存储器403的指令,从而执行电子设备400的各种功能应用以及数据处理。存储器403可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,应用程序的代码等。存储数据区可存储电子设备400使用过程中所创建的数据(比如相机应用采集的图像、视频等)等。

存储器403还可以存储本申请实施例提供的日志提取方法对应的一个或多个计算机程序。该一个或多个计算机程序被存储在上述存储器403中并被配置为被该一个或多个处理器401执行,该一个或多个计算机程序包括指令,上述指令可以用于执行上述相应实施例中的各个步骤。

当然,本申请实施例提供的日志提取方法的代码还可以存储在外部存储器中。这种情况下,处理器401可以通过外部存储器接口运行存储在外部存储器中的日志提取方法的代码,处理器401可以控制运行日志提取流程。

显示屏405包括显示面板。显示面板可以采用液晶显示屏(liquidcrystaldisplay,lcd),有机发光二极管(organiclight-emittingdiode,oled),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganiclightemittingdiode的,amoled),柔性发光二极管(flexlight-emittingdiode,fled),miniled,microled,micro-oled,量子点发光二极管(quantumdotlightemittingdiodes,qled)等。在一些实施例中,电子设备400可以包括1个或n个显示屏405,n为大于1的正整数。显示屏405可用于显示由用户输入的信息或提供给用户的信息以及各种图形用户界面(graphicaluserinterface,gui)。例如,显示屏405可以显示照片、视频、网页、或者文件等。

本申请实施例提供的电子设备,适用于上述方法任一实施例,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。

本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现上述方法实施例所示的日志提取方法。

本申请实施例提供的计算机可读存储介质,适用于上述方法任一实施例,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。

本申请实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的方法。本申请实施例提供的计算机程序产品,适用于上述方法任一实施例,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。

本申请实施例提供日志提取方案通过将配置交易链路关联系统,并在配置关联系统中将交易流水号字段作为交易链路关联配置的唯一标识,实现了全链路日志查询的配置化,即只需要在配置模块中对交易环境和查询环境等常规参数进行配置就可实现通过交易码+链路标志完成交易链路系统中具体交易(每一笔具体交易的唯一标识就是交易流水号)的交易日志的查询和提取,实现了一键获取全链路日志的效果,从而节省上下游间定位交易流水耗时、查询日志复杂,学习成本高等问题,且具有普适性,金融相关行业都能直接使用,能够快速、准确的定位出日志信息从而提高工作效率。

以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,还可以做出若干改进和润饰,这些变化、替换、改进和润饰也应视为都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1