CN107992415B - Fault positioning and analyzing method of transaction system and related server - Google Patents

Fault positioning and analyzing method of transaction system and related server Download PDF

Info

Publication number
CN107992415B
CN107992415B CN201711217381.9A CN201711217381A CN107992415B CN 107992415 B CN107992415 B CN 107992415B CN 201711217381 A CN201711217381 A CN 201711217381A CN 107992415 B CN107992415 B CN 107992415B
Authority
CN
China
Prior art keywords
transaction
application server
process data
processing
failed
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
CN201711217381.9A
Other languages
Chinese (zh)
Other versions
CN107992415A (en
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.)
China Unionpay Co Ltd
Original Assignee
China Unionpay 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 China Unionpay Co Ltd filed Critical China Unionpay Co Ltd
Priority to CN201711217381.9A priority Critical patent/CN107992415B/en
Publication of CN107992415A publication Critical patent/CN107992415A/en
Application granted granted Critical
Publication of CN107992415B publication Critical patent/CN107992415B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3636Software debugging by tracing the execution of the program
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange

Abstract

The embodiment of the invention provides a fault positioning and analyzing method of a transaction system and a related server. And then determining a failure application server of the failure transaction according to the transaction chain of the failure transaction. The application server collects the process data of the transaction and sends the process data to the fault positioning server when the transaction is processed. The fault positioning server determines the transaction chain of the transaction according to the process data of the transaction, so that when the transaction fails, the transaction chain of the failed transaction can be determined according to the identification of the failed transaction, the fault application server is further determined according to the transaction chain, and a query log on each host is not required to be logged to determine a fault host, so that the efficiency of analyzing the failed transaction is improved.

Description

Fault positioning and analyzing method of transaction system and related server
Technical Field
The embodiment of the invention relates to the field of system performance monitoring, in particular to a fault positioning and analyzing method of a transaction system and a related server.
Background
The existing transaction system is a distributed system, the number of host computers in the distributed system is hundreds or thousands, when the transaction system processes transactions, if a transaction fails, it is difficult to determine which system or which host computer caused the transaction failure. In order to track the reason of a failure of a transaction, the prior art adopts a method of logging in all possible analysis logs on a host, sometimes even the analysis logs of the hosts of different distributed systems need to be logged, and the position of the failure is determined, so that the efficiency of failure transaction analysis is very low.
Disclosure of Invention
The embodiment of the invention provides a fault positioning and analyzing method of a transaction system and a related server, which are used for solving the problem of low efficiency of a method for determining transaction failure positions by logging in all hosts in the prior art.
The embodiment of the invention provides a fault positioning and analyzing method of a transaction system, which comprises the following steps:
the fault positioning server acquires the identifier of the failed transaction;
the fault positioning server determines a transaction chain of the failed transaction according to the identifier of the failed transaction, wherein the transaction chain is determined according to process data for processing the transaction, and the process data at least comprises an application server identifier, a transaction identifier and processing time;
and the fault positioning server determines a fault application server of the failed transaction according to the transaction chain of the failed transaction.
Optionally, the determining, by the fault location server, the transaction chain of the failed transaction according to the identifier of the failed transaction includes:
the fault positioning server retrieves process data for processing the failed transaction from a storage area according to the identifier of the failed transaction, wherein the process data for processing the transaction sent by each application server are stored in the storage area;
the fault positioning server sequences the application server identifications in the process data of the failed transaction according to processing time, and then determines a transaction chain of the failed transaction;
the fault positioning server determines a fault application server of the failed transaction according to the transaction chain of the failed transaction, and the fault positioning server comprises:
and the fault positioning server determines the application server corresponding to the application server identifier with the latest processing time in the transaction chain of the failed transaction as the fault application server of the failed transaction.
Optionally, the determining, by the fault location server, the transaction chain of the failed transaction according to the identifier of the failed transaction includes:
the fault positioning server retrieves a transaction chain of the failed transaction from a storage area according to the identifier of the failed transaction, wherein the storage area stores transaction chains corresponding to transactions processed by each application server, and the transaction chains are application server identifiers which are sorted according to processing time;
the fault positioning server determines a fault application server of the failed transaction according to the transaction chain of the failed transaction, and the fault positioning server comprises:
and the fault positioning server determines the application server corresponding to the application server identifier with the latest processing time in the transaction chain of the failed transaction as the fault application server of the failed transaction.
Optionally, the process data further includes a service module identifier, and the transaction chain is a service module identifier sorted according to processing time;
the fault positioning server determines a fault application server of the failed transaction according to the transaction chain of the failed transaction, and the fault positioning server comprises:
and the fault positioning server determines a fault application server and a fault service module of the failed transaction according to the transaction chain of the failed transaction.
Optionally, the method further comprises:
the process data further includes a processing result;
for any one application server, the fault location server determines process data of transactions processed by the application server in a preset period according to an application server identification of the application server; determining the processing speed and the processing success rate of the application server according to the process data of the transaction processed in the preset period;
or
For any one service module, the fault positioning server determines process data of transaction processed by the service module in a preset period according to the service module identifier of the service module; and determining the processing speed and the processing success rate of the business module according to the process data of the transaction processed in the preset period.
The embodiment of the invention also provides a fault positioning and analyzing method of the transaction system, which comprises the following steps:
the application server acquires a transaction carrying an identifier, wherein the identifier of the transaction is determined by an entrance server of a transaction system according to a transaction message of the transaction;
the application server processes the transaction and collects and processes process data of the transaction, wherein the process data at least comprises an application server identifier, a transaction identifier and processing time;
and the application server sends the acquired process data to a fault positioning server.
Optionally, the process data further includes a service module identifier and a processing result;
the application server processes the transaction and collects process data for processing the transaction, including:
the application server processes the transaction through each business module;
aiming at any one business module, the application server collects the process data of the business module for processing the transaction;
the application server sends the collected process data to a fault positioning server, and the method comprises the following steps:
and the application server sends the collected process data of the transaction processed by each service module to a fault positioning server.
Accordingly, an embodiment of the present invention provides a fault location server, including:
the first acquisition module is used for acquiring the identifier of the failed transaction;
the first processing module is used for determining a transaction chain of the failed transaction according to the identifier of the failed transaction, wherein the transaction chain is determined according to process data for processing the transaction, and the process data at least comprises an application server identifier, a transaction identifier and processing time; and determining a fault application server of the failed transaction according to the transaction chain of the failed transaction.
Optionally, the first processing module is specifically configured to:
retrieving process data for processing the failed transaction from a storage area according to the identifier of the failed transaction, wherein the process data for processing the transaction sent by each application server is stored in the storage area;
sequencing the application server identifications in the process data of the failed transaction according to processing time, and determining a transaction chain of the failed transaction;
the first processing module is specifically configured to:
and determining the application server corresponding to the application server identifier with the latest processing time in the transaction chain of the failed transaction as the failed application server of the failed transaction.
Optionally, the first processing module is specifically configured to:
retrieving a transaction chain of the failed transaction from a storage area according to the identifier of the failed transaction, wherein the storage area stores transaction chains corresponding to transactions processed by each application server, and the transaction chains are application server identifiers which are sorted according to processing time;
the first processing module is specifically configured to:
and determining the application server corresponding to the application server identifier with the latest processing time in the transaction chain of the failed transaction as the failed application server of the failed transaction.
Optionally, the process data further includes a service module identifier, and the transaction chain is a service module identifier sorted according to processing time;
the first processing module is specifically configured to:
and determining a fault application server and a fault service module of the failed transaction according to the transaction chain of the failed transaction.
Optionally, the first processing module is further configured to:
the process data further includes a processing result;
for any application server, determining process data of transactions processed by the application server in a preset period according to the application server identification of the application server; determining the processing speed and the processing success rate of the application server according to the process data of the transaction processed in the preset period;
or
For any one service module, determining process data of transaction processed by the service module in a preset period according to the service module identifier of the service module; and determining the processing speed and the processing success rate of the business module according to the process data of the transaction processed in the preset period.
An embodiment of the present invention further provides an application server, including:
the second acquisition module is used for acquiring a transaction carrying an identifier, wherein the identifier of the transaction is determined by an entrance server of a transaction system according to a transaction message of the transaction;
the second processing module is used for processing the transaction and acquiring and processing process data of the transaction, wherein the process data at least comprises an application server identifier, a transaction identifier and processing time; and sending the collected process data to a fault positioning server.
Optionally, the process data further includes a service module identifier and a processing result;
the second processing module is specifically configured to:
processing the transaction through each business module; aiming at any one business module, acquiring process data of the business module for processing the transaction;
the second processing module is specifically configured to:
and transmitting the collected process data of the transaction processed by each service module to a fault positioning server.
An embodiment of the present invention provides a computing device, including:
a memory for storing program instructions;
and the processor is used for calling the program instructions stored in the memory and executing the method according to the obtained program.
An embodiment of the present invention provides a computer storage medium, which stores computer-executable instructions for causing a computer to perform any one of the methods described above.
The embodiment of the invention shows that the fault positioning server acquires the identifier of the failed transaction; determining a transaction chain of the failed transaction according to the identifier of the failed transaction, wherein the transaction chain is determined according to process data for processing the transaction, and the process data at least comprises an application server identifier, a transaction identifier and processing time; and the fault positioning server determines a fault application server of the failed transaction according to the transaction chain of the failed transaction. The application server collects process data of transaction processing when processing the transaction and sends the process data to the fault positioning server, and the process data at least comprises application server identification, transaction identification and processing time. The fault positioning server determines the transaction chain of the transaction according to the process data of the transaction, so that when the transaction fails, the fault positioning server can determine the transaction chain of the failed transaction according to the identification of the failed transaction, further determine the fault application server according to the transaction chain of the failed transaction, and does not need to log in a query log on each host to determine a fault host, thereby improving the efficiency of analyzing the failed transaction.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without inventive exercise.
FIG. 1 is a diagram illustrating a system architecture suitable for use with an embodiment of the present invention;
fig. 2 is a schematic flow chart of a fault location and analysis method of a transaction system according to an embodiment of the present invention;
fig. 3 is a schematic flowchart of a method for acquiring process data by an application server according to an embodiment of the present invention;
fig. 4 is a schematic structural diagram of a fault location server according to an embodiment of the present invention;
fig. 5 is a schematic structural diagram of an application server according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more clearly apparent, the present invention is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
Fig. 1 is a schematic diagram illustrating a system architecture to which an embodiment of the present invention is applicable, and as shown in fig. 1, the system architecture to which an embodiment of the present invention is applicable includes a fault location server 101 and an application server 102. The fault location server 101 and the application server 102 are connected by wire or wirelessly. In one embodiment, the number of application servers connected to the fault location server 101 is one or more. The plurality of application servers connected to the fault location server 101 may belong to one distributed system or may belong to different distributed systems. Each application server includes one or more service modules therein.
Based on the system architecture shown in fig. 1, as shown in fig. 2, an embodiment of the present invention provides a method for fault location and analysis of a transaction system, including the following steps:
in step S201, the fault location server obtains an identifier of the failed transaction.
Step S202, the fault location server determines a transaction chain of the failed transaction according to the identification of the failed transaction, wherein the transaction chain is determined according to the process data for processing the transaction.
Step S203, the fault positioning server determines a fault application server of the failed transaction according to the transaction chain of the failed transaction.
Specifically, in step S201, the fault location server may obtain an identifier of the failed transaction by receiving an instruction input by the operation and maintenance staff.
In step S202, the process data is collected by the application server when processing the transaction and sent to the fault location server, and the process data at least includes an application server identifier, a transaction identifier, and processing time. The method for determining the transaction chain of the failed transaction by the fault location server according to the identifier of the failed transaction at least comprises the following two methods:
according to the first method, the fault positioning server retrieves process data for processing the failed transaction from the storage area according to the identifier of the failed transaction, and the process data for processing the transaction sent by each application server is stored in the storage area. And then sequencing the application server identifications in the process data of the failed transaction according to the processing time, and determining a transaction chain of the failed transaction. The specific sorting method may be such that the earlier the processing time is, or the later the processing time is, the earlier the processing time is.
And secondly, after the fault positioning server receives the process data for processing the transaction sent by the application server, for any transaction, retrieving the process data for processing the transaction from the storage area according to the transaction identifier of the transaction, wherein the process data for processing the transaction sent by each application server is stored in the storage area. And then sequencing the application server identifications in the process data of the transaction according to the processing time, and determining a transaction chain of the transaction. And correspondingly storing the determined transaction chains of all the transactions and the transaction identifications in a storage area. And after acquiring the identifier of the failed transaction, the fault positioning server retrieves a transaction chain of the failed transaction from the storage area according to the identifier of the failed transaction.
In step S203, the fault location server may determine the application server corresponding to the application server identifier with the latest processing time in the transaction chain of the failed transaction as the faulty application server of the failed transaction. Because the fault positioning server determines the transaction chain of the transaction according to the process data of processing the transaction, when the transaction fails, the fault positioning server can quickly determine the transaction chain of the failed transaction according to the identification of the failed transaction, further determine the fault application server according to the transaction chain, and does not need to log in a query log on each host to determine a fault host, so that the efficiency of analyzing the failed transaction is improved.
Further, the process data further includes a service module identifier, so the transaction chain may also be a service module identifier sorted according to processing time. The fault positioning server can simultaneously determine a fault application server and a fault service module according to a transaction chain of the failure transaction, and the method specifically comprises the following two methods:
according to the first method, the fault positioning server retrieves process data for processing the failed transaction from the storage area according to the identifier of the failed transaction, and the process data for processing the transaction sent by each application server is stored in the storage area. And then sequencing the service module identifications in the process data of the failed transaction according to the processing time, and determining a transaction chain of the failed transaction. And then determining a service module corresponding to the service module identifier with the latest processing time in the transaction chain of the failed transaction as a failed service module of the failed transaction, and determining an application server to which the failed service module belongs as a failed application server.
And secondly, after the fault positioning server receives the process data for processing the transaction sent by the application server, retrieving the process data for processing the transaction from the storage area according to the identification of the transaction aiming at any transaction, wherein the process data for processing the transaction sent by each application server is stored in the storage area. And then sequencing the service module identifications in the transaction process data according to the processing time, and determining a transaction chain of the transaction. And correspondingly storing the determined transaction chains of all the transactions and the transaction identifications in a storage area. And after acquiring the identifier of the failed transaction, the fault positioning server retrieves a transaction chain of the failed transaction from the storage area according to the identifier of the failed transaction. And then determining a service module corresponding to the service module identifier with the latest processing time in the transaction chain of the failed transaction as a failed service module of the failed transaction, and determining an application server to which the failed service module belongs as a failed application server.
Because the fault positioning server determines the transaction chain after sequencing according to the service module identifiers contained in the process data, when a transaction fails, the transaction chain determined according to the failed transaction identifiers can be used for determining a fault application server for processing the failed transaction and determining a fault service module, so that the position of the transaction failure can be determined more accurately, and the processing efficiency of the failed transaction is further improved.
Optionally, the process data further comprises processing results. The fault location server may further evaluate the performance of each application server and service module based on the process data for processing the transaction, which is described below with respect to the application server and the service module, respectively.
And for any one application server, the fault positioning server determines the process data of the transaction processed by the application server in a preset period according to the application server identification of the application server. And the fault positioning server determines the processing speed of the application server in a preset period according to the processing time of the application server in the process data of processing the transaction. And the fault positioning server determines the processing success rate of the application server in a preset period according to the processing result in the process data of the transaction processed by the application server. And the fault positioning server displays the processing speed and the processing success rate of the application server in a preset period. And when the fault positioning server determines that the processing speed of the application server in the preset period is less than a first preset threshold or the success rate of the application server in the preset period for processing the transaction is less than a second threshold, starting an alarm and reminding operation and maintenance personnel in a preset reminding mode. It should be noted that, when evaluating the performance of the application server, if the sampling rate is not set to 100%, that is, the entry server of the transaction system only generates the identifier corresponding to the received partial transaction, the process data of the transaction carrying the identifier and the transaction not carrying the identifier needs to be collected and counted at the same time to evaluate the performance of the application server.
And aiming at any one service module, the fault positioning server determines the process data of the transaction processed by the service module in a preset period according to the service module identifier of the service module. And the fault positioning server determines the processing speed of the business module in a preset period according to the processing time of the business module in the process data of processing the transaction. And the fault positioning server determines the processing success rate of the business module in a preset period according to the processing result in the process data of the business module processing transaction. And the fault positioning server displays the processing speed and the processing success rate of the service module in a preset period. And when the fault positioning server determines that the processing speed of the service module in the preset period is less than a third preset threshold or the success rate of the service module in the preset period for processing the transaction is less than a fourth threshold, starting an alarm and reminding operation and maintenance personnel in a preset reminding mode. It should be noted that, when evaluating the performance of the service module, if the sampling rate is not set to 100%, that is, the entry server of the transaction system only generates the identifier corresponding to the received partial transaction, the process data of the transaction carrying the identifier and the transaction not carrying the identifier needs to be collected and counted at the same time to evaluate the performance of the application service module. The fault positioning server monitors the running state of each application server and each service module in real time according to the acquired process data, so that when the running state of the application server or each service module is abnormal and the running efficiency of the whole system is reduced, the abnormal application server or the abnormal service module can be quickly positioned, and the operation and maintenance efficiency of the system is improved.
Optionally, in a specific implementation, the process data is collected and sent to the fault location server by the application server when processing the transaction, and a method for collecting the process data by the application server is specifically described below, where a specific process is shown in fig. 3, and includes the following steps:
step S301, the application server obtains the transaction carrying the identification, and the identification of the transaction is determined by the entrance server of the transaction system according to the transaction message of the transaction.
Step S302, the application server processes the transaction and collects the process data of the transaction, wherein the process data at least comprises the application server identification, the transaction identification, the processing time and the processing result.
Step S303, the application server sends the collected process data to a fault positioning server.
Specifically, in step S301, the entry server of the transaction system generates an identifier of the transaction according to a transaction message of the transaction, where each identifier of the transaction is different from identifiers of other transactions, and the identifier of the transaction will follow the transaction message and pass through each application server and a service module of each application server. In a specific implementation, the portal server of the transaction system may generate a corresponding identifier for each transaction, for example, after the transaction system is on line, since the time is a period when the probability of occurrence of a problem is high, the sampling rate may be configured to be 100%, that is, the portal server of the transaction system generates the identifier corresponding to the transaction for each received transaction. The portal server of the transaction system may also generate corresponding identifiers for part of the received transactions, for example, after the system is stably operated, considering that processing each transaction and generating a corresponding transaction amount have an influence on the performance of the application server and the fault location server, the sampling rate may be lowered, that is, the portal server of the transaction system generates identifiers corresponding to the received part of the transactions.
In step S302 and step S303, the processing time in the process data includes a start processing time and an end processing time. Before the application server collects the process data, collection points are arranged at the entrance and the exit of the application server. In the process of processing the transaction by the application server, a preset acquisition point acquires the time when the application server starts to process the transaction, the time when the application server finishes processing and a processing result, and if the processed transaction carries an identifier, the application server simultaneously acquires the identifier of the transaction. And the application server sends the acquired data and the application server identification as process data to the fault positioning server.
Furthermore, the process data also comprises a service module identifier, and the application server can also collect the process data of transaction processed by each service module in the application server. The method specifically comprises the following steps: and the business module collects the processing start time, the processing end time and the processing result of the transaction in the process of processing the transaction, and if the transaction carries the identifier, the application server simultaneously collects the identifier of the transaction. And then the collected data, the service module identification and the identification of the application server to which the service module belongs are taken as process data and sent to a fault positioning server. In addition, a plurality of sampling points may be set in one service module, and process data of each operation in one service module is collected, for example, if one service module may perform database operation, encryption operation, and network operation, the sampling points of the three operations may be set respectively, and process data of the database operation, the encryption operation, and the network operation of the service module during transaction processing may be collected. As the unique identifier is added to the transaction, the process data of the transaction are collected by the application server and all service modules in the application server according to the preset sampling point, and then the process data are sent to the fault positioning server. Therefore, when a transaction fails, the fault positioning server can index process data for processing the failed transaction according to the unique identification of the transaction, and further can determine the fault position of the failed transaction, so that operation and maintenance personnel can conveniently position and process the failed transaction.
In order to better explain the embodiment of the present invention, the following describes a flow of a fault location and analysis method of a transaction system provided by the embodiment of the present invention through a specific implementation scenario. The entry server I is set to add the identifier M to a transaction after receiving the transaction, and an application server A and an application server B in the transaction system process the transaction in sequence, wherein a service module a1 in the application server A processes the transaction, and a service module B1 and a service module B2 in the application server B process the transaction. The process data collected when the business module a1 processes the transaction M in the application server a is as follows: the transaction M, the server A, the business module a1, the processing time is 8:00-8:01, and the processing result is successful. The process data collected when the business module B1 in the application server B processes the transaction M is: the transaction M, the server B, the service module B1, the processing time is 8:01-8:02, and the processing result is successful. The process data collected when the business module B2 in the application server B processes the transaction M is: the transaction M, the server B, the service module B2, the processing time of 8:02-8:03 and the processing result of failure. And the application server A and the application server B respectively send the acquired process data to the fault positioning server. After receiving the process data sent by the application server, the fault positioning server acquires the process data corresponding to the transaction M, and then sorts the service module identifiers according to the processing time in the process data to determine a transaction chain of the transaction M as follows: ingress server I-traffic module a 1-traffic module b 1-traffic module b 2. The fault location server saves the transaction chain of transaction M to the storage area. When the operation and maintenance personnel know that the transaction of the transaction M fails, retrieving a transaction chain from a storage area of the fault positioning server according to the transaction identifier M: ingress server I-traffic module a 1-traffic module b 1-traffic module b 2. From the structure of the query, it can be seen that the last module in the transaction chain of transaction M is not the egress server, and it can be determined that service module b2 is the failed service module of transaction M. Since the traffic module B2 belongs to the application server B, the application server B may be further determined as a failed application server.
The embodiment of the invention shows that the fault positioning server acquires the identifier of the failed transaction; determining a transaction chain of the failed transaction according to the identifier of the failed transaction, wherein the transaction chain is determined according to process data for processing the transaction, and the process data at least comprises an application server identifier, a transaction identifier and processing time; and the fault positioning server determines a fault application server of the failed transaction according to the transaction chain of the failed transaction. The application server collects process data of transaction processing when processing the transaction and sends the process data to the fault positioning server, and the process data at least comprises application server identification, transaction identification and processing time. The fault positioning server determines the transaction chain of the transaction according to the process data of the transaction, so that when the transaction fails, the fault positioning server can determine the transaction chain of the failed transaction according to the identification of the failed transaction, further determine the fault application server according to the transaction chain of the failed transaction, and does not need to log in a query log on each host to determine a fault host, thereby improving the efficiency of analyzing the failed transaction.
Based on the same technical concept, an embodiment of the present invention further provides a fault location server, as shown in fig. 4, including:
a first obtaining module 401, configured to obtain an identifier of a failed transaction;
a first processing module 402, configured to determine a transaction chain of the failed transaction according to the identifier of the failed transaction, where the transaction chain is determined according to process data for processing the transaction, and the process data at least includes an application server identifier, an identifier of the transaction, and processing time; and determining a fault application server of the failed transaction according to the transaction chain of the failed transaction.
Optionally, the first processing module 402 is specifically configured to:
retrieving process data for processing the failed transaction from a storage area according to the identifier of the failed transaction, wherein the process data for processing the transaction sent by each application server is stored in the storage area;
sequencing the application server identifications in the process data of the failed transaction according to processing time, and determining a transaction chain of the failed transaction;
the first processing module 402 is specifically configured to:
and determining the application server corresponding to the application server identifier with the latest processing time in the transaction chain of the failed transaction as the failed application server of the failed transaction.
Optionally, the first processing module 402 is specifically configured to:
retrieving a transaction chain of the failed transaction from a storage area according to the identifier of the failed transaction, wherein the storage area stores transaction chains corresponding to transactions processed by each application server, and the transaction chains are application server identifiers which are sorted according to processing time;
the first processing module 402 is specifically configured to:
and determining the application server corresponding to the application server identifier with the latest processing time in the transaction chain of the failed transaction as the failed application server of the failed transaction.
Optionally, the process data further includes a service module identifier, and the transaction chain is a service module identifier sorted according to processing time;
the first processing module 402 is specifically configured to:
and determining a fault application server and a fault service module of the failed transaction according to the transaction chain of the failed transaction.
Optionally, the first processing module 402 is further configured to:
the process data further includes a processing result;
for any application server, determining process data of transactions processed by the application server in a preset period according to the application server identification of the application server; determining the processing speed and the processing success rate of the application server according to the process data of the transaction processed in the preset period;
or
For any one service module, determining process data of transaction processed by the service module in a preset period according to the service module identifier of the service module; and determining the processing speed and the processing success rate of the business module according to the process data of the transaction processed in the preset period.
Based on the same technical concept, an embodiment of the present invention further provides an application server, as shown in fig. 5, including:
a second obtaining module 501, configured to obtain a transaction with an identifier, where the identifier of the transaction is determined by an entry server of a transaction system according to a transaction message of the transaction;
a second processing module 502, configured to process the transaction and acquire process data for processing the transaction, where the process data at least includes an application server identifier, a transaction identifier, and processing time; and sending the collected process data to a fault positioning server.
Optionally, the process data further includes a service module identifier and a processing result;
the second processing module 502 is specifically configured to:
processing the transaction through each business module; aiming at any one business module, acquiring process data of the business module for processing the transaction;
the second processing module 502 is specifically configured to:
and transmitting the collected process data of the transaction processed by each service module to a fault positioning server.
Embodiments of the present invention provide a computing device, which may be specifically a desktop computer, a portable computer, a smart phone, a tablet computer, a Personal Digital Assistant (PDA), and the like. The computing device may include a Central Processing Unit (CPU), memory, input/output devices, etc., the input devices may include a keyboard, mouse, touch screen, etc., and the output devices may include a Display device, such as a Liquid Crystal Display (LCD), a Cathode Ray Tube (CRT), etc.
Memory, which may include Read Only Memory (ROM) and Random Access Memory (RAM), provides the processor with program instructions and data stored in the memory. In embodiments of the present invention, the memory may be used to store program instructions for a fault location and analysis method of a transaction system;
and the processor is used for calling the program instructions stored in the memory and executing the fault positioning and analyzing method of the transaction system according to the obtained program.
Embodiments of the present invention provide a computer storage medium having stored thereon computer-executable instructions for a method for fault location and analysis of a transaction system.
It should be apparent to those skilled in the art that embodiments of the present invention may be provided as a method, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present invention have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including preferred embodiments and all such alterations and modifications as fall within the scope of the invention.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present invention without departing from the spirit and scope of the invention. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.

Claims (16)

1. A method for fault location and analysis of a transaction system, comprising:
the fault positioning server acquires the identifier of the failed transaction;
the fault positioning server determines a transaction chain of the failed transaction according to the identifier of the failed transaction, wherein the transaction chain is obtained by sequencing the identifiers of the application servers in the process data of processing the transaction according to the processing time;
and the fault positioning server determines the application server corresponding to the application server identifier with the latest processing time in the transaction chain of the failed transaction as the fault application server of the failed transaction.
2. The method of claim 1, wherein the fault location server determining a transaction chain for the failed transaction based on the identification of the failed transaction comprises:
the fault positioning server retrieves process data for processing the failed transaction from a storage area according to the identifier of the failed transaction, wherein the process data for processing the transaction sent by each application server are stored in the storage area;
and the fault positioning server sequences the application server identifications in the process data of the failed transaction according to the processing time and then determines a transaction chain of the failed transaction.
3. The method of claim 1, wherein the fault location server determining a transaction chain for the failed transaction based on the identification of the failed transaction comprises:
and the fault positioning server retrieves a transaction chain of the failed transaction from a storage area according to the identifier of the failed transaction, the storage area stores transaction chains corresponding to the transactions processed by each application server, and the transaction chains are the identifiers of the application servers which are sequenced according to the processing time.
4. The method of claim 1, wherein the process data further includes a business module identification, the transaction chain being a business module identification sorted by processing time;
the fault positioning server determines a fault application server of the failed transaction according to the transaction chain of the failed transaction, and the fault positioning server comprises:
and the fault positioning server determines a fault application server and a fault service module of the failed transaction according to the transaction chain of the failed transaction.
5. The method of claim 4, further comprising:
the process data further includes a processing result;
for any one application server, the fault location server determines process data of transactions processed by the application server in a preset period according to an application server identification of the application server; determining the processing speed and the processing success rate of the application server according to the process data of the transaction processed in the preset period;
or
For any one service module, the fault positioning server determines process data of transaction processed by the service module in a preset period according to the service module identifier of the service module; and determining the processing speed and the processing success rate of the business module according to the process data of the transaction processed in the preset period.
6. A method for fault location and analysis of a transaction system, comprising:
the application server acquires a transaction carrying an identifier, wherein the identifier of the transaction is determined by an entrance server of a transaction system according to a transaction message of the transaction;
the application server processes the transaction and collects process data for processing the transaction;
the application server sends the collected process data to a fault positioning server, so that when the fault positioning server obtains the identifier of the failed transaction, the fault positioning server determines a transaction chain of the failed transaction according to the identifier of the failed transaction, and determines an application server corresponding to the application server identifier with the latest processing time in the transaction chain of the failed transaction as a fault application server of the failed transaction, wherein the transaction chain is obtained by sequencing the application server identifiers in the process data for processing the transaction according to the processing time.
7. The method of claim 6, wherein the process data further includes a business module identification and a processing result;
the application server processes the transaction and collects process data for processing the transaction, including:
the application server processes the transaction through each business module;
aiming at any one business module, the application server collects the process data of the business module for processing the transaction;
the application server sends the collected process data to a fault positioning server, and the method comprises the following steps:
and the application server sends the collected process data of the transaction processed by each service module to a fault positioning server.
8. A fault location server, comprising:
the first acquisition module is used for acquiring the identifier of the failed transaction;
the first processing module is used for determining a transaction chain of the failed transaction according to the identifier of the failed transaction, wherein the transaction chain is obtained by sequencing the identifiers of the application servers in the process data of processing the transaction according to the processing time; and determining the application server corresponding to the application server identifier with the latest processing time in the transaction chain of the failed transaction as the failed application server of the failed transaction.
9. The fault location server of claim 8, wherein the first processing module is specifically configured to:
retrieving process data for processing the failed transaction from a storage area according to the identifier of the failed transaction, wherein the process data for processing the transaction sent by each application server is stored in the storage area;
and sequencing the application server identifications in the process data of the failed transaction according to the processing time, and then determining a transaction chain of the failed transaction.
10. The fault location server of claim 8, wherein the first processing module is specifically configured to:
and retrieving a transaction chain of the failed transaction from a storage area according to the identifier of the failed transaction, wherein the storage area stores the transaction chain corresponding to the transaction processed by each application server, and the transaction chain is the identifier of the application server which is sequenced according to the processing time.
11. The fault location server of claim 8,
the process data also comprises a service module identifier, and the transaction chain is the service module identifier which is sequenced according to the processing time;
the first processing module is specifically configured to:
and determining a fault application server and a fault service module of the failed transaction according to the transaction chain of the failed transaction.
12. The fault location server of claim 11, wherein the first processing module is further to:
the process data further includes a processing result;
for any application server, determining process data of transactions processed by the application server in a preset period according to the application server identification of the application server; determining the processing speed and the processing success rate of the application server according to the process data of the transaction processed in the preset period;
or
For any one service module, determining process data of transaction processed by the service module in a preset period according to the service module identifier of the service module; and determining the processing speed and the processing success rate of the business module according to the process data of the transaction processed in the preset period.
13. An application server, comprising:
the second acquisition module is used for acquiring a transaction carrying an identifier, wherein the identifier of the transaction is determined by an entrance server of a transaction system according to a transaction message of the transaction;
the second processing module is used for processing the transaction and acquiring and processing process data of the transaction; the collected process data is sent to a fault positioning server, so that when the fault positioning server obtains the identification of the failed transaction, the transaction chain of the failed transaction is determined according to the identification of the failed transaction, the application server corresponding to the application server identification with the latest processing time in the transaction chain of the failed transaction is determined as the fault application server of the failed transaction, and the transaction chain is obtained by sequencing the application server identifications in the process data of the processed transaction according to the processing time.
14. The application server of claim 13, wherein the process data further includes a business module identification and a processing result;
the second processing module is specifically configured to:
processing the transaction through each business module; aiming at any one business module, acquiring process data of the business module for processing the transaction;
the second processing module is specifically configured to:
and transmitting the collected process data of the transaction processed by each service module to a fault positioning server.
15. A computing device, comprising:
a memory for storing program instructions;
a processor for calling program instructions stored in said memory to perform a method according to any of claims 1 to 5 or a method according to any of claims 6 to 7 in accordance with the obtained program.
16. A computer storage medium having stored thereon computer-executable instructions for causing a computer to perform the method of any of claims 1 to 5 or the method of any of claims 6 to 7.
CN201711217381.9A 2017-11-28 2017-11-28 Fault positioning and analyzing method of transaction system and related server Active CN107992415B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711217381.9A CN107992415B (en) 2017-11-28 2017-11-28 Fault positioning and analyzing method of transaction system and related server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711217381.9A CN107992415B (en) 2017-11-28 2017-11-28 Fault positioning and analyzing method of transaction system and related server

Publications (2)

Publication Number Publication Date
CN107992415A CN107992415A (en) 2018-05-04
CN107992415B true CN107992415B (en) 2021-04-16

Family

ID=62033968

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711217381.9A Active CN107992415B (en) 2017-11-28 2017-11-28 Fault positioning and analyzing method of transaction system and related server

Country Status (1)

Country Link
CN (1) CN107992415B (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108683562B (en) * 2018-05-18 2022-05-17 深圳壹账通智能科技有限公司 Anomaly detection positioning method and device, computer equipment and storage medium
CN109995585B (en) * 2019-03-22 2021-12-31 杭州复杂美科技有限公司 Exception handling method, device and storage medium
CN110223173A (en) * 2019-05-20 2019-09-10 深圳壹账通智能科技有限公司 Trade link abnormality eliminating method and relevant device
CN111192130B (en) * 2019-12-11 2023-11-17 中国建设银行股份有限公司 Method, system, device and storage medium for determining fault source in transaction monitoring
CN111488289B (en) * 2020-04-26 2024-01-23 支付宝实验室(新加坡)有限公司 Fault positioning method, device and equipment
CN111563002B (en) * 2020-05-15 2023-07-25 中国工商银行股份有限公司 Transaction fault processing method and device, electronic equipment and storage medium
CN112035550A (en) * 2020-09-01 2020-12-04 中国银行股份有限公司 Fault positioning method and device
CN113282465A (en) * 2021-06-17 2021-08-20 中国建设银行股份有限公司 Fault positioning method and device, electronic equipment and computer storage medium
CN114170741B (en) * 2021-12-03 2023-11-24 建信金融科技有限责任公司 Transaction efficiency monitoring method, ATM front-end system and self-service business control and management system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102833093A (en) * 2012-07-04 2012-12-19 国家计算机网络与信息安全管理中心 Network fault processing method, device and system
CN107018042A (en) * 2017-04-13 2017-08-04 广东神马搜索科技有限公司 Method for tracing and tracing system for online service system

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6212947B2 (en) * 2013-05-16 2017-10-18 富士通株式会社 Information processing apparatus, control apparatus, and control program
CN105095052B (en) * 2014-05-22 2018-08-31 阿里巴巴集团控股有限公司 Fault detection method under SOA environment and device
US10778748B2 (en) * 2015-06-05 2020-09-15 Apple Inc. Rapid reconfiguration of device location system
CN105978723A (en) * 2016-05-11 2016-09-28 广州唯品会信息科技有限公司 Network information management method and device
CN106681909A (en) * 2016-12-02 2017-05-17 中国工商银行股份有限公司 Online transaction fault locating method and device
CN107181633A (en) * 2017-07-27 2017-09-19 郑州云海信息技术有限公司 A kind of method and system of long-range acquisition business diary

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102833093A (en) * 2012-07-04 2012-12-19 国家计算机网络与信息安全管理中心 Network fault processing method, device and system
CN107018042A (en) * 2017-04-13 2017-08-04 广东神马搜索科技有限公司 Method for tracing and tracing system for online service system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
一种分布式并行服务器节点故障检测算法;左朝树等;《电子科技大学学报》;20070228;第36卷(第1期);全文 *

Also Published As

Publication number Publication date
CN107992415A (en) 2018-05-04

Similar Documents

Publication Publication Date Title
CN107992415B (en) Fault positioning and analyzing method of transaction system and related server
CN109587008B (en) Method, device and storage medium for detecting abnormal flow data
CN110730246A (en) Distributed link tracking method under micro-service architecture
EP4099170B1 (en) Method and apparatus of auditing log, electronic device, and medium
CN106104496A (en) The abnormality detection not being subjected to supervision for arbitrary sequence
CN109388556B (en) Method and device for analyzing test process
CN106874135B (en) Method, device and equipment for detecting machine room fault
CN111400189A (en) Code coverage rate monitoring method and device, electronic equipment and storage medium
CN106844170A (en) A kind of troubleshooting, the influence face method and apparatus of analysis failure
CN115237724A (en) Data monitoring method, device, equipment and storage medium based on artificial intelligence
CN108804501B (en) Method and device for detecting effective information
CN113360376A (en) Buried point testing method and device
CN111708672B (en) Data transmission method, device, equipment and storage medium
CN116645082A (en) System inspection method, device, equipment and storage medium
CN108763053B (en) Method for generating buried point name and terminal equipment
CN110609761A (en) Method and device for determining fault source, storage medium and electronic equipment
CN110737655A (en) Method and device for reporting data
CN115687406A (en) Sampling method, device and equipment of call chain data and storage medium
CN114996328A (en) Method and system for collecting and arranging road and bridge building material detection data
CN114416417A (en) System abnormity monitoring method, device, equipment and storage medium
CN113781068A (en) Online problem solving method and device, electronic equipment and storage medium
CN113127362A (en) Object testing method, object testing device, electronic device, and readable storage medium
CN113285978A (en) Fault identification method based on block chain and big data and cloud computing platform
CN111651753A (en) User behavior analysis system and method
CN115190008B (en) Fault processing method, fault processing device, electronic equipment and storage medium

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