CN117808570B - 银行分布式系统的全链路监控的方法、装置和电子设备 - Google Patents

银行分布式系统的全链路监控的方法、装置和电子设备 Download PDF

Info

Publication number
CN117808570B
CN117808570B CN202410224031.9A CN202410224031A CN117808570B CN 117808570 B CN117808570 B CN 117808570B CN 202410224031 A CN202410224031 A CN 202410224031A CN 117808570 B CN117808570 B CN 117808570B
Authority
CN
China
Prior art keywords
service
monitoring
distributed system
bank
bank distributed
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.)
Active
Application number
CN202410224031.9A
Other languages
English (en)
Other versions
CN117808570A (zh
Inventor
罗烨敏
何良玉
林锋
李上上
唐思敏
李泽龙
黄国熙
马立志
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Meizhou Merchants Bank Co ltd
Original Assignee
Meizhou Merchants Bank Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Meizhou Merchants Bank Co ltd filed Critical Meizhou Merchants Bank Co ltd
Priority to CN202410224031.9A priority Critical patent/CN117808570B/zh
Publication of CN117808570A publication Critical patent/CN117808570A/zh
Application granted granted Critical
Publication of CN117808570B publication Critical patent/CN117808570B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明公开了银行分布式系统的全链路监控的方法、装置和电子设备,该方法包括:采集银行分布式系统内针对服务系统提供的各个服务生成的监控日志;根据监控日志中的全局流水号,确定属于同一业务的各服务;针对每个业务,根据监控日志中的服务消费方系统编号和服务提供方系统编号得到服务对;通过有向箭头将服务对中的两个服务相连接,构造出每个业务对应的包含各服务调用关系和监控日志的调用链路图;接收待监控业务的全局流水号,据此查询待监控业务对应的调用链路图;根据待监控业务对应的调用链路图,监控待监控业务的全链路信息。本发明构造出的调用链路图能够展示业务处理过程的全链路跟踪,相对现有技术而言,对银行分布式系统更加友好。

Description

银行分布式系统的全链路监控的方法、装置和电子设备
技术领域
本发明涉及计算机技术领域,尤其涉及一种银行分布式系统的全链路监控的方法、装置和电子设备。
背景技术
随着业务量的与日俱增,为了提高业务处理效率,分布式架构被广泛用在银行系统中,形成了银行分布式系统。分布式架构在银行系统中的广泛应用,也摆脱了银行系统对国外大型机、中型机和小型机的技术依赖,银行分布式系统的可用性、稳定性、可靠性和性能不断提高。但是分布式架构带来了服务系统数量和服务数量的增长,一个面向客户的业务需要由多个不同的服务系统各自提供对应的服务协同完成。当银行分布式系统出现故障或者性能瓶颈时,需要有一种面向业务的监控机制,用于跟踪某一业务调用的所有服务的执行过程和结果。
目前,通过在服务请求报文的请求头中嵌入一个全局的跟踪号(Trace ID)的方式对业务进行全链路跟踪。
但是,Trace ID是一个与客户、交易和银行分布式系统无关的技术流水号,当业务出现报错时,无法根据Trace ID快速定位到某一笔具体的业务,无法定制化展示业务过程中每个调用服务的信息,对银行分布式系统不够友好。
发明内容
为了解决现有技术中存在的当业务出现业务报错时,无法根据Trace ID快速定位到某一笔业务,无法定制化展示业务过程中每个调用服务的信息,对银行分布式系统不够友好的问题,本发明提供了如下技术方案。
本发明一方面提供了一种银行分布式系统的全链路监控的方法,包括:
采集银行分布式系统内针对服务系统提供的各个服务生成的监控日志,其中,所述监控日志按照预设格式生成,所述监控日志至少包括全局流水号、服务消费方系统编号和服务提供方系统编号;
根据所述全局流水号,确定属于同一业务的各个服务;
针对每个业务的各服务,将监控日志中的服务消费方系统编号和服务提供方系统编号相同的两个服务组成一个服务对;
针对每个服务对,将具有所述服务消费方系统编号的服务通过有向箭头与具有所述服务提供方系统编号的服务相连接,构造出每个业务对应的调用链路图,其中,所述调用链路图中包含各服务的调用关系和记录有监控日志;
接收用户输入的待监控业务的全局流水号;
根据待监控业务的全局流水号,查询待监控业务对应的调用链路图;
根据待监控业务对应的调用链路图,监控待监控业务的全链路信息。
优选地,所述监控日志还包括:消费方流水号、服务开始时间、交易耗时、服务代码、交易状态、返回代码、返回信息和服务提供系统的服务器标识;和/或,所述监控日志还包括机构标识、交易卡号或交易金额。
优选地,还包括:
根据服务代码统计银行分布式系统的服务调用量;
根据所述银行分布式系统的服务调用量,监控所述银行分布式系统的健康状况。
优选地,还包括:
根据交易耗时统计银行分布式系统的平均交易耗时;
根据所述银行分布式系统的平均交易耗时,监控所述银行分布式系统的健康状况;或
根据监控日志的交易耗时,统计银行分布式系统第一预设时间段的耗时分布;
根据所述银行分布式系统第一预设时间段的耗时分布,监控所述银行分布式系统的健康状况。
优选地,还包括:
根据返回代码统计银行分布式系统的请求成功率;
根据所述银行分布式系统的请求成功率,监控所述银行分布式系统的健康状况;或
根据监控日志的返回代码,统计银行分布式系统内各服务的返回码分布;
根据所述银行分布式系统内各服务的返回码分布,监控所述银行分布式系统的健康状况。
优选地,还包括:
根据服务开始时间统计银行分布式系统第二预设时间段的服务调用数量;
根据所述银行分布式系统第二预设时间段的服务调用数量,监控所述银行分布式系统的健康状况。
优选地,还包括:
根据交易耗时和服务代码,统计银行分布式系统内每个服务的平均耗时;
根据所述银行分布式系统内每个服务的平均耗时,监控所述银行分布式系统的健康状况。
本发明的第二方面,提供一种银行分布式系统的全链路监控的装置,包括:
采集模块,用于采集银行分布式系统内针对服务系统提供的各个服务生成的监控日志,其中,所述监控日志按照预设格式生成,所述监控日志至少包括全局流水号、服务消费方系统编号和服务提供方系统编号;
确定模块,用于根据所述全局流水号,确定属于同一业务的各个服务;
配对模块,用于针对每个业务的各服务,将监控日志中的服务消费方系统编号和服务提供方系统编号相同的两个服务组成一个服务对;
构造模块,用于针对每个服务对,将具有所述服务消费方系统编号的服务通过有向箭头与具有所述服务提供方系统编号的服务相连接,构造出每个业务对应的调用链路图,其中,所述调用链路图中包含各服务的调用关系和记录有监控日志;
接收模块,用于接收用户输入的待监控业务的全局流水号;
查询模块,用于根据待监控业务的全局流水号,查询待监控业务对应的调用链路图;
监控模块,用于根据待监控业务对应的调用链路图,监控待监控业务的全链路信息。
本发明的第三方面提供一种电子设备,包括处理器和存储器,所述存储器存储有多条指令,所述处理器用于读取所述指令并执行如第一方面所述的方法。
本发明的第四方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述多条指令可被处理器读取并执行如第一方面所述的方法。
本发明提供的银行分布式系统的全链路监控的方法、装置、电子设备和可读存储介质,具有如下有益效果:本发明针对银行分布式系统中的所有服务均按照预设格式生成规范的监控日志,再对监控日志进行采集、分析,构造出基于全局流水号、服务消费方系统编号和服务提供方系统编号的调用链路图,该调用链路图能够展示业务处理过程的全链路跟踪情况,相对现有技术而言,对银行分布式系统更加友好。
附图说明
图1为本发明实施例提供一种银行分布式系统的全链路监控的方法流程示意图。
图2为本发明实施例提供第一种调用链路图。
图3为本发明实施例提供第二种调用链路图。
图4为本发明实施例提供第三种调用链路图。
图5为本发明实施例提供的基于服务代码的健康状况。
图6为本发明实施例提供的第一种基于交易耗时的健康状况。
图7为本发明实施例提供的第二种基于交易耗时的健康状况。
图8为本发明实施例提供的第一种基于返回代码的健康状况。
图9为本发明实施例提供的第二种基于返回代码的健康状况。
图10为本发明实施例提供的基于交易开始时间的健康状况。
图11为本发明实施例提供的基于交易耗时和服务代码的健康状况。
图12为本发明实施例提供一种银行分布式系统的全链路监控的装置的原理结构图。
具体实施方式
为了更好地理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案做详细的说明。
实施例一
如图1所示,本实施例提供了一种银行分布式系统的全链路监控的方法,包括:
S101:采集银行分布式系统内针对服务系统提供的各个服务生成的监控日志。
在本发明实施例中,银行分布式系统包括多个服务系统,如,电子银行系统、统一支付系统、核心系统、支付前置系统等,银行分布式系统在执行一个业务的过程中,每个服务系统都会为该业务执行一个服务,所有服务共同完成该业务。
并且,每个服务系统都会在提供服务的过程中,针对所提供的服务生成监控日志,所有服务系统的监控日志共同组成了银行分布式系统内针对服务系统提供的各个服务生成的监控日志。
在此需要说明的是,监控日志是按照预设格式规范生成的,也就是说,所有服务系统都统一遵循的监控日志规范,对于每一次服务调用,服务系统均按照预设的规范格式记录一条日志,例如表1,表1是预设的规范格式,所有服务系统均按照该预设的规范格式记录一条监控日志。
表1
监控域名 域中文描述 长度 示例 是否必需 备注
GlblSrlNO 全局流水号 30 300356220905143743000000062002 全局流水号由交易的后台触发点生成(事件触发或规则触发),全局唯一,全交易流程共用,一直持续到该交易完整结束(成功或者失败)。全局流水号,用于唯一识别和跟踪一个交易及由其触发的各级子交易。同一交易在各系统或各事务流转处理时,传递同一全局流水号;若一个交易触发多个组合子交易,组合子交易也需要传递同一全局流水号,但是组合子交易自身可以拥有自己的系统流水号
CnsmrSrlNO 消费方流水号 30 300356220905143743100000095809 唯一标识系统内一次服务调用的流水号,由服务消费方生成,相邻的两个系统之间的传递
St 服务开始时间 17 20220116183700100 yyyyMMddhhmmssNNN
Cos 交易耗时 8 115 单位毫秒
CnsmrSysId 服务消费方系统编号 6 300356 服务消费方系统编号
SrcCnsmrSysId 服务提供方系统编号 6 300356 服务提供方系统编号
SvcCd 服务代码 8 30130002 唯一标识一支服务
TxnSt 交易状态 1 通讯系统级状态,S-成功,F-失败,N-超时
RetCd 返回代码 30 后台系统对业务错误代码的定义
RetMsg 返回信息 256 后台系统对业务错误的描述
PrvdrSevrNO 服务提供系统的服务器标识 30 counter-teller-01.ncbs.gz.ksh 识别发生交易的主机名
InstId 机构标识 7 105 服务请求者的机构归属
Crd1 交易卡号1 19 6236430811111111111 借记交易的卡号
Crd2 交易卡号2 19 6236430811111111111 贷记交易的卡号
Amt 交易金额 22 100.40
在此需要说明的是,表1中的全局流水号和消费方流水号使用相同的编码规则。30位全局流水号和消费方流水号的编码规则如下:
“6位应用系统编码”+“6位交易日期”+“6位交易时间”+“1位标志位”+“11位流水序号”。其中:“6位应用系统编码”为应用系统编码,全行应用系统的唯一编码;“6位交易日期”为当前流水生成系统的交易日期,按YYMMDD格式编排;“6位交易时间”为当前流水生成系统的交易时间,按HHMMSS格式编排;“1位标志位”区分流水号的类型,“0”表示全局流水号,“1”表示消费方流水号;
“11位流水序号”要求银行分布式系统的不同部署实例生成不冲突的流水序号,可以采用“记录下一步脚印”的方式实现,即应用服务器启动时,从数据库读取序号(下一步脚印)的值(例如120000)缓存在内存中,同时将当前的序号加上一定的步幅(例如10000)后,再将“下一步脚印”(130000)更新回数据库。每生成一个流水序号后,内存中缓存的值向上加1,达到上限(129999)后,再重新从数据库中取“下一步脚印”。正常情形下序列号从120000不断加1向前递增,如果因为重启等原因而导致序列号中断,则重启后从数据库中读取,序列号直接从130000开始递增,跳过120000至130000之间的其余数值。
另外,上述表1中的格式只是示例性的,并不唯一,可以根据实际需求来增加和去除相应的“域中文描述”,但是由于本发明是基于全局流水号、服务消费方系统编号和服务提供方系统编号来构造调用链路图的,因此,表1中的全局流水号、服务消费方系统编号和服务提供方系统编号是基础,其他域中文描述可以根据实际需求进行增减。
每个服务系统在提供服务时都会按照表1所示的规范格式记录一条监控日志,所有服务系统的监控日志共同组成了银行分布式系统内针对服务系统提供的各个服务生成的监控日志,例如针对如下交易:
假设客户在电子银行分布式系统发起一笔本行转它行的转账业务,业务的处理过程如下:首先“电子银行系统”调用“统一支付系统”的“跨行转账”服务,接着“统一支付系统”调用“核心系统”的“支付统一记账”服务,扣客户账户的金额,转入“跨行待清算账户”,最后“统一支付系统”调用“支付前置系统”的“人行超网转出”服务,实现它行账户的入账。
如果各服务的处理结果都是成功的,则在银行分布式系统内针对电子银行系统提供服务、统一支付系统提供的“跨行转账”服务、核心系统提供的“支付统一记账”服务和支付前置系统提供的“人行超网转出”服务生成的监控日志可如表2所示。
表2
如果最后一步“统一支付系统”调用“支付前置系统”的“人行超网转出”服务发生超时,则在银行分布式系统内针对电子银行系统提供服务、统一支付系统提供的“跨行转账”服务、核心系统提供的“支付统一记账”服务和支付前置系统提供的“人行超网转出”服务生成的监控日志可如表3所示。
表3
如果“统一支付系统”调用“核心系统”的“支付统一记账”服务,扣客户账户的金额时报“账户余额不足的”错误,则在银行分布式系统内针对电子银行系统提供服务、统一支付系统提供的“跨行转账”服务、核心系统提供的“支付统一记账”服务和支付前置系统提供的“人行超网转出”服务生成的监控日志可如表4所示。
表4
在本发明实施例中,监控日志的文件命名方式可以为:
TRAN_<应用实例标识>_<日期>.log;其中,“应用实例标识”是标识一个系统启动的多个实例;“日期”的格式为yyyyMMdd,例如:TRAN_fncbs_20211201.log。
监控日志文件存放路径及传输方式为:文件的存放目录为/opt/logs/appmon。
监控日志文件约束性要求为:应用服务器必须运行全行统一的时钟同步服务;数据文件的编码为UTF-8。
监控日志文件格式定义为:数据文件中每一行表示一次服务调用,一次服务调用的信息由多个域组成;各域按顺序记录,在两个域之间用|@|分隔。
在本发明实施例中,本发明设计一个日志管理系统,用于采集银行分布式系统内针对服务生成的监控日志,并实现集中的日志收集、存储、分析和查询。在每台应用服务器中均部署一个监控日志代理,用于将应用服务器/opt/logs/appmon目录中的监控日志,以TCP的方式,推送到日志管理系统。日志管理系统将监控日志代理推送的日志,保存到搜索和分析引擎(如Elasticsearch)。
S102:根据所述全局流水号,确定属于同一业务的各个服务。
进一步的,由于本发明针对每个业务均构造一个调用链路图,又由于银行分布式系统会执行很多业务处理,处理每个业务都会调用多个服务系统来完成,会生成很多不同业务下不同服务的监控日志,因此,需要确定每个业务下都有哪些服务被调用。
由于同一业务在调用多个服务系统时会使用同一个全局流水号,因此,在本发明实施例中,可根据所述全局流水号,确定属于同一业务下的各服务。
S103:针对每个业务的各服务,将监控日志中的服务消费方系统编号和所述服务提供方系统编号相同的两个服务组成一个服务对。
S104:针对每个服务对,将具有所述服务消费方系统编号的服务通过有向箭头与具有所述服务提供方系统编号的服务相连接,构造出每个业务对应的调用链路图。
进一步的,由于调用链路图中包含各服务的调用关系和记录有监控日志,又由于服务系统的监控日志里服务消费方系统编号和服务提供方系统编号记录了服务系统在执行同一业务时,被调用的先后顺序,因此,在本发明实施例中,可以针对每个业务,根据属于该业务下各服务的监控日志内的所述服务消费方系统编号和服务提供方系统编号,构造每个业务对应的调用链路图。
在此需要说明的是,每个业务都会构造一个对应的调用链路图,调用链路图中包含各服务的调用关系和记录有监控日志。
本发明实施例提供一种根据属于该业务下各服务的监控日志内的所述服务消费方系统编号和服务提供方系统编号,构造每个业务对应的调用链路图的具体实施方式,如下:
确定属于该业务下各服务的监控日志中所述服务消费方系统编号和所述服务提供方系统编号相同的两个服务系统,组成服务对;针对每个服务对,将具有所述服务消费方系统编号的服务系统通过有向箭头与具有所述服务提供方系统编号的服务系统相连接,构造出每个业务对应的调用链路图,在调用链路图中,各服务系统作为节点。
延续上例说明调用链路图的构造过程。假设银行分布式系统内针对服务系统提供的各个服务生成的监控日志如表2所示。其中,统一支付系统的“服务消费方系统编号”等于电子银行系统的“服务提供方系统编号”,则统一支付系统和电子银行系统组成服务对;核心系统和支付前置系统的“服务消费方系统编号”分别等于统一支付系统的“服务提供方系统编号”,则核心系统和统一支付系统组成服务对;支付前置系统和统一支付系统组成服务对;针对统一支付系统和电子银行系统组成的服务对,通过有向箭头将电子银行系统与统一支付系统连接;针对核心系统和统一支付系统组成的服务对,通过有向箭头将统一支付系统与核心系统连接;针对支付前置系统和统一支付系统组成的服务对,通过有向箭头将统一支付系统与支付前置系统连接。因为核心系统的开始时间小于支付前置系统的开始时间(如表2所示),所以将核心系统的节点放在支付前置系统节点的上面。最终建立的调用链路图如图2所示。图2中的每个节点表示一次服务的调用,点击统一支付系统节点,可以看到该统一支付系统服务详细的处理信息(如图2中的下半部分表格所示)。
假设银行分布式系统内针对服务系统提供的各个服务生成的监控日志如表3所示。其中,统一支付系统的“服务消费方系统编号”等于电子银行系统的“服务提供方系统编号”,则统一支付系统和电子银行系统组成服务对;核心系统和支付前置系统的“服务消费方系统编号”分别等于统一支付系统的“服务提供方系统编号”,则核心系统和统一支付系统组成服务对;支付前置系统和统一支付系统组成服务对;针对统一支付系统和电子银行系统组成的服务对,通过有向箭头将电子银行系统与统一支付系统连接;针对核心系统和统一支付系统组成的服务对,通过有向箭头将统一支付系统与核心系统连接;针对支付前置系统和统一支付系统组成的服务对,通过有向箭头将统一支付系统与支付前置系统连接;因为核心系统的开始时间小于支付前置系统的开始时间(如表3),所以将核心系统的节点放在支付前置系统节点的上面。最终建立的调用链路图如图3所示,图3中的每个节点表示一次服务的调用,点击统一支付系统节点,可以看到该统一支付系统服务详细的处理信息(如图3中的下半部分表格所示),通过图3所示的“调用链路图”可以清晰地看到,电子银行系统、统一支付系统和支付前置系统均发生了交易超时的情况。
假设银行分布式系统内针对服务系统提供的各个服务生成的监控日志如表4所示。其中,统一支付系统的“服务消费方系统编号”等于电子银行系统的“服务提供方系统编号”,则统一支付系统和电子银行系统组成服务对;核心系统的“服务消费方系统编号”等于统一支付系统的“服务提供方系统编号”,则核心系统和统一支付系统组成服务对;针对统一支付系统和电子银行系统组成的服务对,通过有向箭头将电子银行系统与统一支付系统连接;针对核心系统和统一支付系统组成的服务对,通过有向箭头将统一支付系统与核心系统连接;最终建立的调用链路图如图4所示。图4中的每个节点表示一次服务的调用,点击统一支付系统节点,可以看到该统一支付系统服务详细的处理信息(如图4中的下半部分表格所示),通过如图4所示的“调用链路图”可以清晰地看到,电子银行系统、核心系统均发生了余额不足的情况。
在此需要说明的是,图2、图3和图4中的电子银行系统、统一支付系统、核心系统和支付前置系统都是调用链路图的节点,一个节点表示一次服务的调用。
S105:接收用户输入的待监控业务的全局流水号。
S106:根据待监控业务的全局流水号,查询待监控业务对应的调用链路图。
S107:根据待监控业务对应的调用链路图,监控待监控业务的全链路信息。
进一步的,通过步骤S101-S104,对银行分布式系统中的每个业务都构造出了对应的调用链路图,用户想要监控哪个业务的全链路可以直接输入待监控业务的全局流水号即可,银行分布式系统在接收到用户输入的待监控业务的全局流水号之后,会根据待监控业务的全局流水号,查询待监控业务对应的调用链路图,根据待监控业务对应的调用链路图,监控待监控业务的全链路信息,用户可点击调用链路图中的每个节点查看具体监控日志。
通过上述方式,本发明针对银行分布式系统中的所有服务均按照预设格式生成规范的监控日志,再对监控日志进行采集、分析,构造出基于全局流水号、服务消费方系统编号和服务提供方系统编号的调用链路图,该链路图能够展示业务处理过程的全链路跟踪,相对现有技术而言,对银行分布式系统更加友好。
在实际应用中,会出现用户想要了解银行分布式系统的健康状况的情况,因此,在本发明实施例中,监控日志除了包括全局流水号、服务消费方系统编号和服务提供方系统编号,还会包括消费方流水号、服务开始时间、交易耗时、服务代码、交易状态、返回代码、返回信息、服务提供系统的服务器标识、机构标识;和/或,所述监控日志还包括机构标识、交易卡号或交易金额。
在本发明实施例中,依赖于监控日志包括的服务代码,可以根据监控日志包括的服务代码,统计银行分布式系统的服务调用量;根据所述银行分布式系统的服务调用量,监控所述银行分布式系统的健康状况,如图5所示,图5示例性表示银行分布式系统的服务调用量,该服务调用量反映了银行分布式系统的健康状况。
在本发明实施例中,依赖于监控日志包括的交易耗时,可以根据监控日志的交易耗时,统计银行分布式系统的平均交易耗时;根据所述银行分布式系统的平均交易耗时,监控所述银行分布式系统的健康状况,如图6所示,图6示例性表示银行分布式系统的平均交易耗时,该平均交易耗时反映了银行分布式系统的健康状况;可以根据监控日志的交易耗时,统计银行分布式系统第一预设时间段的耗时分布,第一预设时间段是根据用户的需求指定的任意的一个时间范围;根据所述银行分布式系统第一预设时间段的耗时分布,监控所述银行分布式系统的健康状况,如图7所示,图7示例性表示银行分布式系统第一预设时间段的耗时分布,该耗时分布反映了银行分布式系统的健康状况。
在本发明实施例中,依赖于监控日志包括的返回代码,可以根据监控日志的返回代码,统计银行分布式系统的请求成功率;根据所述银行分布式系统的请求成功率,监控所述银行分布式系统的健康状况,如图8所示,图8示例性表示银行分布式系统的请求成功率,该请求成功率反映了银行分布式系统的健康状况;可以根据监控日志的返回代码,统计银行分布式系统内各服务的返回码分布;根据所述银行分布式系统内各服务的返回码分布,监控所述银行分布式系统的健康状况,如图9所示,图9示例性表示银行分布式系统内各服务的返回码分布,该返回码反映了银行分布式系统的健康状况。
在本发明实施例中,依赖于监控日志包括的服务开始时间,可以根据监控日志的服务开始时间,统计银行分布式系统第二预设时间段的服务调用数量,第二预设时间段是根据用户的需求指定的任意的一个时间范围;根据所述银行分布式系统第二预设时间段的服务调用数量,监控所述银行分布式系统的健康状况,如图10所示,图10示例性表示银行分布式系统第二预设时间段的服务调用数量,该服务调用数量反映了银行分布式系统的健康状况。
在本发明实施例中,依赖于监控日志包括的交易耗时和服务代码,可以根据监控日志的交易耗时和服务代码,统计银行分布式系统内每个服务的平均耗时;根据所述银行分布式系统内每个服务的平均耗时,监控所述银行分布式系统的健康状况,如图11所示,图11示例性表示银行分布式系统内每个服务的平均耗时,该每个服务的平均耗时反映了银行分布式系统的健康状况。
本发明基于各服务系统的监控日志,对系统的健康状况进行监控。
实施例二
本实施例提供一种银行分布式系统的全链路监控的装置,如图12所示,包括:
采集模块1201,用于采集银行分布式系统内针对服务系统提供的各个服务生成的监控日志,其中,所述监控日志按照预设格式生成,所述监控日志至少包括全局流水号、服务消费方系统编号和服务提供方系统编号;
确定模块1202,用于根据所述全局流水号,确定属于同一业务的各个服务;
配对模块1203,用于针对每个业务的各服务,将监控日志中服务消费方系统编号和所述服务提供方系统编号相同两个服务组成一个服务对;
构造模块1204,用于针对每个服务对,将具有所述服务消费方系统编号的服务通过有向箭头与具有所述服务提供方系统编号的服务相连接,构造出每个业务对应的调用链路图,其中,所述调用链路图中包含各服务的调用关系和记录有监控日志;
接收模块1205,用于接收用户输入的待监控业务的全局流水号;
查询模块1206,用于根据待监控业务的全局流水号,查询待监控业务对应的调用链路图;
监控模块1207,用于根据待监控业务对应的调用链路图,监控待监控业务的全链路信息。
所述监控日志还包括:消费方流水号、服务开始时间、交易耗时、服务代码、交易状态、返回代码、返回信息和服务提供系统的服务器标识;和/或,所述监控日志还包括机构标识、交易卡号或交易金额。
所述装置还包括:健康监控模块1208;所述健康监控模块用于根据监控日志包括的服务代码,统计银行分布式系统的服务调用量;根据所述银行分布式系统的服务调用量,监控所述银行分布式系统的健康状况。
所述健康监控模块1208,还用于根据监控日志的交易耗时,统计银行分布式系统的平均交易耗时;根据所述银行分布式系统的平均交易耗时,监控所述银行分布式系统的健康状况;或根据监控日志的交易耗时,统计银行分布式系统第一预设时间段的耗时分布;根据所述银行分布式系统第一预设时间段的耗时分布,监控所述银行分布式系统的健康状况。
所述健康监控模块1208,还用于根据监控日志的返回代码,统计银行分布式系统的请求成功率;根据所述银行分布式系统的请求成功率,监控所述银行分布式系统的健康状况;或根据监控日志的返回代码,统计银行分布式系统内各服务的返回码分布;根据所述银行分布式系统内各服务的返回码分布,监控所述银行分布式系统的健康状况。
所述健康监控模块1208,还用于根据监控日志的服务开始时间,统计银行分布式系统第二预设时间段的服务调用数量;根据所述银行分布式系统第二预设时间段的服务调用数量,监控所述银行分布式系统的健康状况。
所述健康监控模块1208,还用于根据监控日志的交易耗时和服务代码,统计银行分布式系统内每个服务的平均耗时;根据所述银行分布式系统内每个服务的平均耗时,监控所述银行分布式系统的健康状况。
该装置可实现上述实施例一提供的银行分布式系统的全链路监控的方法,具体的预测方法可参见实施例一中的描述,在此不再赘述。
本发明提供了一种电子设备,包括处理器和存储器,所述存储器存储有多条指令,所述处理器用于读取所述指令并执行前述实施例一中的任一种方法。
本发明还提供了一种电子设备,包括处理器和与所述处理器连接的存储器,所述存储器存储有多条指令,所述指令可被所述处理器加载并执行,以使所述处理器能够执行如实施例一中的任意一种方法。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (9)

1.一种银行分布式系统的全链路监控的方法,其特征在于,包括:
采集银行分布式系统内针对服务系统提供的各个服务生成的监控日志,其中,所述监控日志按照预设格式生成,所述监控日志至少包括全局流水号、服务消费方系统编号和服务提供方系统编号;
根据所述全局流水号,确定属于同一业务的各个服务;
针对每个业务的各服务,将监控日志中的服务消费方系统编号和服务提供方系统编号相同的两个服务组成一个服务对;
针对每个服务对,将具有所述服务消费方系统编号的服务通过有向箭头与具有所述服务提供方系统编号的服务相连接,构造出每个业务对应的调用链路图,其中,所述调用链路图中包含各服务的调用关系和记录有监控日志;
接收用户输入的待监控业务的全局流水号;
根据待监控业务的全局流水号,查询待监控业务对应的调用链路图;
根据待监控业务对应的调用链路图,监控待监控业务的全链路信息;
所述监控日志还包括:消费方流水号、服务开始时间、交易耗时、服务代码、交易状态、返回代码、返回信息和服务提供系统的服务器标识;和/或,所述监控日志还包括机构标识、交易卡号或交易金额;
根据所述银行分布式系统的服务调用量、交易耗时、请求成功率、返回代码、服务开始时间或交易耗时与服务代码,监控所述银行分布式系统的健康状况。
2.根据权利要求1所述的银行分布式系统的全链路监控的方法,其特征在于,还包括:
根据服务代码统计银行分布式系统的服务调用量;
根据所述银行分布式系统的服务调用量,监控所述银行分布式系统的健康状况。
3.根据权利要求1所述的银行分布式系统的全链路监控的方法,其特征在于,还包括:
根据交易耗时统计银行分布式系统的平均交易耗时;
根据所述银行分布式系统的平均交易耗时,监控所述银行分布式系统的健康状况;或
根据监控日志的交易耗时,统计银行分布式系统第一预设时间段的耗时分布;
根据所述银行分布式系统第一预设时间段的耗时分布,监控所述银行分布式系统的健康状况。
4.根据权利要求1所述的银行分布式系统的全链路监控的方法,其特征在于,还包括:
根据返回代码统计银行分布式系统的请求成功率;
根据所述银行分布式系统的请求成功率,监控所述银行分布式系统的健康状况;或
根据监控日志的返回代码,统计银行分布式系统内各服务的返回码分布;
根据所述银行分布式系统内各服务的返回码分布,监控所述银行分布式系统的健康状况。
5.根据权利要求1所述的银行分布式系统的全链路监控的方法,其特征在于,还包括:
根据服务开始时间统计银行分布式系统第二预设时间段的服务调用数量;
根据所述银行分布式系统第二预设时间段的服务调用数量,监控所述银行分布式系统的健康状况。
6.根据权利要求1所述的银行分布式系统的全链路监控的方法,其特征在于,还包括:
根据交易耗时和服务代码,统计银行分布式系统内每个服务的平均耗时;
根据所述银行分布式系统内每个服务的平均耗时,监控所述银行分布式系统的健康状况。
7.一种银行分布式系统的全链路监控的装置,其特征在于,包括:
采集模块,用于采集银行分布式系统内针对服务系统提供的各个服务生成的监控日志,其中,所述监控日志按照预设格式生成,所述监控日志至少包括全局流水号、服务消费方系统编号和服务提供方系统编号;
确定模块,用于根据所述全局流水号,确定属于同一业务的各个服务;
配对模块,用于针对每个业务的各服务,将监控日志中的服务消费方系统编号和服务提供方系统编号相同的两个服务组成一个服务对;
构造模块,用于针对每个服务对,将具有所述服务消费方系统编号的服务通过有向箭头与具有所述服务提供方系统编号的服务相连接,构造出每个业务对应的调用链路图,其中,所述调用链路图中包含各服务的调用关系和记录有监控日志;
接收模块,用于接收用户输入的待监控业务的全局流水号;
查询模块,用于根据待监控业务的全局流水号,查询待监控业务对应的调用链路图;
监控模块,用于根据待监控业务对应的调用链路图,监控待监控业务的全链路信息;
所述监控日志还包括:消费方流水号、服务开始时间、交易耗时、服务代码、交易状态、返回代码、返回信息和服务提供系统的服务器标识;和/或,所述监控日志还包括机构标识、交易卡号或交易金额;
根据所述银行分布式系统的服务调用量、交易耗时、请求成功率、返回代码、服务开始时间或交易耗时与服务代码,监控所述银行分布式系统的健康状况。
8.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有多条指令,所述处理器用于读取所述指令并执行如权利要求1-6任一所述的银行分布式系统的全链路监控的方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,所述多条指令可被处理器读取并执行如权利要求1-6任一所述的银行分布式系统的全链路监控的方法。
CN202410224031.9A 2024-02-29 2024-02-29 银行分布式系统的全链路监控的方法、装置和电子设备 Active CN117808570B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410224031.9A CN117808570B (zh) 2024-02-29 2024-02-29 银行分布式系统的全链路监控的方法、装置和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410224031.9A CN117808570B (zh) 2024-02-29 2024-02-29 银行分布式系统的全链路监控的方法、装置和电子设备

Publications (2)

Publication Number Publication Date
CN117808570A CN117808570A (zh) 2024-04-02
CN117808570B true CN117808570B (zh) 2024-05-07

Family

ID=90430242

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410224031.9A Active CN117808570B (zh) 2024-02-29 2024-02-29 银行分布式系统的全链路监控的方法、装置和电子设备

Country Status (1)

Country Link
CN (1) CN117808570B (zh)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020147419A1 (zh) * 2019-01-18 2020-07-23 深圳壹账通智能科技有限公司 监控方法、装置、计算机设备及存储介质
CN111740860A (zh) * 2020-06-15 2020-10-02 中国工商银行股份有限公司 日志数据传输链路监控方法及装置
CN112801666A (zh) * 2021-03-30 2021-05-14 北京宇信科技集团股份有限公司 基于企业服务总线的监控管理方法、系统、介质和设备
CN113987074A (zh) * 2021-10-27 2022-01-28 中国工商银行股份有限公司 分布式服务全链路监控方法、装置、电子设备及存储介质
CN114020556A (zh) * 2021-08-27 2022-02-08 上海浦东发展银行股份有限公司 基于微服务架构的分布式交易链路追踪系统
CN114189430A (zh) * 2021-12-09 2022-03-15 兴业银行股份有限公司 立体化日志全链路监控系统、方法、介质及设备
CN114844797A (zh) * 2022-05-27 2022-08-02 中国银行股份有限公司 调用链日志与监控日志关联方法及微服务异常检测方法
CN115834328A (zh) * 2021-09-16 2023-03-21 中国电信股份有限公司 用于云平台的全链路性能监控的方法和系统
CN115936608A (zh) * 2022-12-01 2023-04-07 深圳市雁联计算系统有限公司 基于交易链路的分布式流水号生成方法、装置及存储介质
CN116232844A (zh) * 2023-03-09 2023-06-06 天津银行股份有限公司 一种基于分布式体系下的系统监控方法
CN117041120A (zh) * 2023-09-22 2023-11-10 南方电网数字电网集团信息通信科技有限公司 一种分布式全链路服务监控系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111383022B (zh) * 2018-12-29 2020-12-08 广州市百果园信息技术有限公司 聚合支付的后台架构方法、系统、计算机设备及存储介质

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020147419A1 (zh) * 2019-01-18 2020-07-23 深圳壹账通智能科技有限公司 监控方法、装置、计算机设备及存储介质
CN111740860A (zh) * 2020-06-15 2020-10-02 中国工商银行股份有限公司 日志数据传输链路监控方法及装置
CN112801666A (zh) * 2021-03-30 2021-05-14 北京宇信科技集团股份有限公司 基于企业服务总线的监控管理方法、系统、介质和设备
CN114020556A (zh) * 2021-08-27 2022-02-08 上海浦东发展银行股份有限公司 基于微服务架构的分布式交易链路追踪系统
CN115834328A (zh) * 2021-09-16 2023-03-21 中国电信股份有限公司 用于云平台的全链路性能监控的方法和系统
CN113987074A (zh) * 2021-10-27 2022-01-28 中国工商银行股份有限公司 分布式服务全链路监控方法、装置、电子设备及存储介质
CN114189430A (zh) * 2021-12-09 2022-03-15 兴业银行股份有限公司 立体化日志全链路监控系统、方法、介质及设备
CN114844797A (zh) * 2022-05-27 2022-08-02 中国银行股份有限公司 调用链日志与监控日志关联方法及微服务异常检测方法
CN115936608A (zh) * 2022-12-01 2023-04-07 深圳市雁联计算系统有限公司 基于交易链路的分布式流水号生成方法、装置及存储介质
CN116232844A (zh) * 2023-03-09 2023-06-06 天津银行股份有限公司 一种基于分布式体系下的系统监控方法
CN117041120A (zh) * 2023-09-22 2023-11-10 南方电网数字电网集团信息通信科技有限公司 一种分布式全链路服务监控系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
分布式一体化监控在中国工商银行的探索与实践;虞珊;中国金融电脑;20210131;第48-51页 *
锦州银行自助平台通讯及管理交易模块的设计与实现;陈格格;中国优秀硕士学位论文全文数据库 (信息科技辑);20160315;I138-2042 *

Also Published As

Publication number Publication date
CN117808570A (zh) 2024-04-02

Similar Documents

Publication Publication Date Title
CN112801666B (zh) 基于企业服务总线的监控管理方法、系统、介质和设备
CN108880934B (zh) 一种基于区块链的数据流量统计方法和装置
CN112416708B (zh) 异步调用链路监控方法及系统
US6665391B2 (en) Auditing of charges in an integrated prevalidation and ordering system
CN106096926B (zh) 事件处理方法、装置、电子装置和存储介质
CN117808570B (zh) 银行分布式系统的全链路监控的方法、装置和电子设备
CN114706827A (zh) 一种交易链路拓扑自动生成方法及装置
CN116109322A (zh) 数据采集方法、数据采集设备以及计算机可读存储介质
CN113836145B (zh) 请求数据的方法、装置、电子设备及计算机可读存储介质
CN112613967B (zh) 业务交易数据处理方法、装置、计算机设备和存储介质
CN111639936B (zh) 交易信息的获取方法、装置、电子设备及可读存储介质
CN113902415A (zh) 财务数据核对方法、装置、计算机设备和存储介质
CN117952620B (zh) 基于数据处理的对账单还原在网率的佣金结算方法及系统
CN117591564B (zh) 一种针对图数据库的图数据查询方法及相关设备
CN114928530B (zh) 链路信息采集方法及相关装置
CN114584621B (zh) 一种数据发送的方法及装置
CN118245482A (zh) 业务报表的生成方法、装置、设备和介质
JP2001060163A (ja) トランザクションログ情報の処理装置
CN118212054A (zh) 数据处理方法、装置、存储介质及计算机设备
CN116091226A (zh) 跨系统的交易分析方法、交易分析装置与交易分析系统
JPH05300254A (ja) カスタマアクセス情報収集方式
JP2004038492A (ja) 有料情報提供方法及び同システム
CN117472713A (zh) 一种数据处理方法及相关设备
CN112307338A (zh) 运价搜索系统的流量控制方法、装置、设备和存储介质
CN116450376A (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
GR01 Patent grant
GR01 Patent grant