Business process concatenation method, apparatus, device and computer program product

CN116797006BActive Publication Date: 2026-09-11CHINA MOBILE GROUP SHAIHAI +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210237697.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-03-11
Publication Date
2026-09-11
Estimated Expiration
2042-03-11

AI Technical Summary

Technical Problem

[0004]本申请实施例提供一种业务流程串联方法、装置、设备及计算机程序产品,用以解决现有技术中,对于事先无统一规划的业务系统由于输出的日志信息格式不同统一,且缺少全局调用的跟踪标识,因此,难以实现业务流程串联的技术问题

Benefits of technology

[0037] The business process concatenation method, apparatus, device, and computer program product provided in this application, by sorting out the business process rules, using regular expression matching to construct the interface call relationship of the business, analyzing massive log information, and forward constructing the business call chain, realizes business process concatenation. It requires no major system modifications, avoids impacting the original business processes, and solves the problem that business systems without prior unified planning struggle to achieve business process concatenation due to inconsistent log information formats and a lack of global call tracking identifiers.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116797006B_ABST
    Figure CN116797006B_ABST
Patent Text Reader

Abstract

The application relates to the technical field of data processing, and provides a business process concatenation method, device, equipment and computer program product. The method comprises the following steps: acquiring parameter information of collected log information, and dividing the log information into grouped process data according to the parameter information; performing result analysis on the grouped process data, and determining a business result of the grouped process data; performing regular matching on the grouped process data and a preset business process rule according to the business result, so as to concatenate the grouped process data into a business call chain. The business process concatenation method provided in the application embodiment can construct a business call chain in a forward direction, realizes business process concatenation without the need of greatly modifying a system, avoids affecting an original business process, solves the problem that a business system without unified planning in advance is difficult to realize business process concatenation due to non-uniform log information formats and the lack of a tracking identifier of global calling.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of data processing technology, specifically to a business process concatenation method, apparatus, equipment, and computer program product. Background Technology

[0002] With the development of computer technology, most enterprises build business systems based on their own business scenarios to achieve paperless and information-based business processes. The implementation of the same business process often requires the coordination of multiple systems. Especially for some critical businesses, during peak business periods, business process requests often fail, which necessitates locating business faults and analyzing the causes of failures.

[0003] Currently, most analyses of business process failures rely on linking log information from various systems to construct a complete business call chain. Building a complete business call chain requires pre-planning of the business systems to ensure a unified format for their log outputs. However, for business systems that haven't undergone this pre-planning, the log formats are inconsistent, and there's no pre-planned traceID to track global calls throughout the entire business process. Therefore, it's difficult to extract business call relationships from massive amounts of data and construct a business call chain to connect the business processes. Summary of the Invention

[0004] This application provides a business process concatenation method, apparatus, device, and computer program product to solve the technical problem in the prior art that it is difficult to realize business process concatenation for business systems without unified prior planning due to different and unified output log information formats and the lack of global call tracking identifiers.

[0005] In a first aspect, embodiments of this application provide a method for connecting business processes, including:

[0006] Obtain parameter information from the collected log information, and divide the log information into grouped process data based on the parameter information;

[0007] Analyze the grouping process data to determine the business outcome of the grouping process data;

[0008] Based on the business results, the grouped process data is matched with preset business process rules using regular expressions to connect the grouped process data into a business call chain.

[0009] In one embodiment, the step of performing result analysis on the grouping process data to determine the business outcome of the grouping process data includes:

[0010] Obtain the business configuration information of the grouped process data, and parse each return message information in the grouped process data into a first expression based on the business configuration information. Each group of process data in the grouped process data includes one or more return message information, and the business configuration information includes system code and system call relationship.

[0011] Identify the variable information in the first expression and replace the variable information with preset field information to obtain the second expression. The variable information includes user identifier and terminal identifier.

[0012] Semantic recognition is performed on the result description information in the second expression, and the business result of the second expression is determined based on the recognized semantic information.

[0013] In one embodiment, the step of performing regular expression matching between the grouped process data and preset business process rules based on the business results to concatenate the grouped process data into a business call chain includes:

[0014] Obtain the business identifier information corresponding to each group of process data in the grouped process data, and determine the target rule corresponding to each group of process data from the preset business process rules based on the business identifier, wherein the business process rule is a regular expression;

[0015] The second expression in each group of process data is matched with the target rule, and the concatenation order of each second expression is determined according to the business result;

[0016] The process data from each group are linked together to form a business call chain according to the specified sequence.

[0017] In one embodiment, the step of obtaining the parameter information of the collected log information includes:

[0018] Obtain the convergence implementation class information of each business system that generated the log information;

[0019] Based on the convergence implementation class information, code insertion processing is performed on each of the business systems. The code insertion processing includes unified entry code insertion and unified exit code insertion.

[0020] Based on the unified entry code and the unified exit code, parameter information of the log information is obtained at the unified entry and unified exit of each of the business systems. The parameter information includes trace ID, session ID, and request input / output parameters. The trace ID is generated when the business system initiates a business process based on the code insertion processing of each of the business systems.

[0021] In one embodiment, before the step of performing regular expression matching between the grouped process data and preset business process rules based on the business results to concatenate the grouped process data into a business call chain, the method further includes:

[0022] Create a cache list and compare the process processing time corresponding to each group of process data in the grouped process data with a preset timeout threshold;

[0023] If the processing time of the process is less than or equal to the preset timeout threshold, the process data is cached in the cache list for matching and retrieval.

[0024] If the processing time of the process exceeds the preset timeout threshold, the process data is marked as timeout process data and then entered into the database.

[0025] In one embodiment, after the step of performing regular expression matching between the grouped process data and preset business process rules based on the business results to concatenate the grouped process data into a business call chain, the method further includes:

[0026] The business processing results of the business call chain are marked, and the business call chain is batch-stored based on the business results;

[0027] Visualize the business call chain of the data entering the database.

[0028] In one embodiment, the step of batch importing the business call chain into the database includes:

[0029] Create a blocking queue and cache the business call chain in the blocking queue;

[0030] When the number of service call chains cached in the blocking queue exceeds a preset number, the service call chains cached in the blocking queue are added to the database. Alternatively, a preset number of service call chains are extracted from the blocking queue and added to the database every preset time interval.

[0031] Secondly, embodiments of this application provide a business process serialization device, comprising:

[0032] The data acquisition and classification module is used to acquire parameter information from the collected log information and divide the log information into grouped process data that match the parameter information.

[0033] The business results analysis module is used to perform results analysis on the grouping process data and determine the business results of the grouping process data.

[0034] The regular expression analysis and matching module is used to perform regular expression matching between the grouped process data and preset business process rules based on the business results, so as to connect the grouped process data into a business call chain.

[0035] Thirdly, embodiments of this application provide an electronic device, including a processor and a memory storing a computer program, wherein the processor executes the program to implement the steps of the business process concatenation method described in the first aspect.

[0036] Fourthly, embodiments of this application provide a computer program product, including a computer program that, when executed by a processor, implements the steps of the business process concatenation method described in the first aspect.

[0037] The business process concatenation method, apparatus, device, and computer program product provided in this application, by sorting out the business process rules, using regular expression matching to construct the interface call relationship of the business, analyzing massive log information, and forward constructing the business call chain, realizes business process concatenation. It requires no major system modifications, avoids impacting the original business processes, and solves the problem that business systems without prior unified planning struggle to achieve business process concatenation due to inconsistent log information formats and a lack of global call tracking identifiers. Attached Figure Description

[0038] To more clearly illustrate the technical solutions in this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0039] Figure 1 This is one of the flowcharts illustrating the business process chaining method provided in the embodiments of this application;

[0040] Figure 2 This is one of the schematic diagrams of the log information processing flow of the business process chaining method provided in the embodiments of this application;

[0041] Figure 3 This is one of the visual illustrations of the business call chain of the business process concatenation method provided in the embodiments of this application;

[0042] Figure 4 This is one of the structural schematic diagrams of the business process serialization device provided in this embodiment;

[0043] Figure 5 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application. Detailed Implementation

[0044] To make the objectives, technical solutions, and advantages of this application clearer, the technical solutions of this application will be clearly and completely described below with reference to the accompanying drawings of the embodiments. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0045] Figure 1 This is one of the flowcharts illustrating an embodiment of this application. (Refer to...) Figure 1 This application provides a method for connecting business processes, which may include:

[0046] Step 100: Obtain parameter information of the collected log information, and divide the log information into grouped process data according to the parameter information;

[0047] First, the parameters of the collected log information are obtained. These parameters include the trace ID, session ID, and request input / output parameters. The trace ID distinguishes whether logs originate from the same business process, the session ID distinguishes whether they originate from the same business operator, and the request input / output parameters determine the call information of the business process. Based on the obtained parameter information, the log information is grouped, with logs matching the parameter information grouped into the same group of process data, resulting in corresponding grouped process data. Specifically, logs from the same business operator are associated based on the session ID, and logs from the same business process generated in various business systems are associated using the trace ID, resulting in corresponding grouped process data. This grouped process data includes multiple groups of process data, each generated based on the same business process.

[0048] When dividing log information into grouped process data, it's possible to first group by traceID and then by sessionID, or vice versa; no specific limitation is made here. Taking grouping by sessionID as an example, logs with the same sessionID are grouped together. Logs with the same sessionID represent log information generated by the same business user. It's understood that the same business user can operate multiple different business processes; therefore, each group obtained by grouping by sessionID may contain log information corresponding to multiple business processes. Next, grouping by traceID, different system logs with the same traceID are grouped together. Log information generated by the same business user is then divided into different groups of process data based on the business process it belongs to. Finally, the call relationships between each group of process data are confirmed based on the request input and output parameters to determine if they belong to the same business process. Thus, the collected log information is divided into grouped process data based on the parameter information of the log information. Each group of process data includes multiple groups of process data.

[0049] Step 200: Analyze the grouping process data to determine the business results of the grouping process data;

[0050] Furthermore, after grouping the collected log information, the results of the grouped process data are analyzed to determine the business result of each group of process data. This business result is the return result of each log information in each group of process data. It can be seen that the operation process of the same business process may contain multiple process nodes, and each process node may make calls to one or more other business systems, thereby obtaining call return information from other systems, which contains the business call result.

[0051] Because business process-related log information involves massive amounts of data, it's generally necessary to analyze the results of log information from critical business processes. Therefore, the scope of analysis for critical business processes and their results can be configured, primarily using system coding and call methods in the logs as dimensions. Specifically, on / off control configurations can be applied to each business process. These on / off control configurations determine whether to perform result analysis on the logs of a specific business process, or whether to perform result analysis on a specific log entry within a specific business process. For example, if the business result of a business process's log information is not of interest, result analysis can be omitted; or, if the call result of a certain step in a business process to other systems does not affect the subsequent steps, result analysis for that step is unnecessary. In other words, the on / off control configuration determines the scope of result analysis for business process log information. When a business process changes, result analysis can be started or stopped using the configured on / off switch.

[0052] Furthermore, regarding the expression configuration for the call return messages in the log information, it is necessary to control the fields required for result analysis in the return messages. By encoding the business steps, the fields required for result analysis in the return messages can be converted into regular expressions for control. Then, through semantic recognition and analysis of the result description content in the return messages, the business result of the return message corresponding to each log message in each set of process data is determined. This business result includes "success, failure, warning, prompt," etc.

[0053] Step 300: Based on the business results, perform regular expression matching between the grouped process data and the preset business process rules to connect the grouped process data into a business call chain.

[0054] After analyzing the business results of each set of process data, regular expression matching is performed between each set of process data and the preset business process rules based on the obtained business results. This connects each set of process data into a business call chain, completing the connection of the business processes. Specifically, the preset business process rules are the system call relationships in the business process operation process that have been sorted out in advance. These business process rules include the step code identifiers of the process rules and the call relationships between each step. The step code of the process rule can be a code compiled according to the business steps of different business processes, or it can be the business system code. The following uses the business system code as the step code of the business process as an example for explanation. Then, the call relationship between the steps is the call relationship between the business systems. It can be seen that different business steps of the business process generally need to call different business systems. Using the code of the business system that needs to be called by the step as the business step code is conducive to unifying the rules of different business processes, constructing a unified standard process rule expression, and adapting to complex and ever-changing business scenarios. Taking the broadband new installation service as an example, it is assumed to consist of five steps: "verify the selected package", "verify the package price and time", "obtain the fee", "schedule the construction time verification" and "BCE service acceptance submission". The code of each step is assumed to be "( <31> )-( <33> )+-( <37> | <41> )*-( <43> The rule specifies that the business process is pre-configured with step identifiers 31, 33, 37, 41, and 43. Each business step identifier is distinguished by angle brackets and parentheses, separated by a "-". Further, in this process rule, the "+" and "*" carried by the business step identifiers indicate the calling relationship between steps. "+" indicates one or more calls, meaning that step coded "33" can be called once or multiple times in this business process. "*" indicates zero or more calls, meaning that business steps coded "37" or "41" may or may not be called, or may be called once or multiple times. "|" represents a logical OR. Specifically, this process rule means: the business process begins with business step coded "31", then "33" appears one or more times, indicating that business step coded "33" can be called once or multiple times. Then, "37" or "41" appears zero or more times, indicating that business steps coded "37" or "41" may or may not be called, or may be called once or multiple times. Finally, the process ends with business step coded "43".

[0055] Each group of process data is matched with the business process rules using regular expressions. Combined with the business results of the process data, the concatenation order of the process data is determined, and process data within the same group are linked together to form a business call chain. It is known that for business steps configured to be performed once or multiple times in a process rule, if the call returns a failure message, the next process step cannot proceed. For example, in step "33" of the above process rule, if the call result returns a failure, the business operator may initiate the call again within the same business process until the call succeeds or the process ends. Therefore, for step calls within the same process step, the collected log information may contain multiple return messages. These multiple return messages correspond to the same step in the business process. During regular expression matching, process data with successful business results are concatenated, while process data with failed business results are concatenated into the same process step for result aggregation, thereby constructing a business call chain.

[0056] Furthermore, based on the process data of the same business process, one or more business call chains can be constructed, for example, based on the process rule "( <31> )-( <33> )+-( <37> | <41> )*-( <43> For example, when the business step coded as "33" fails to return a result, one or more business call chains that partially match the process rules can be chained together. <31> )-( <33> When multiple calls occur until all business systems return successful, a business call chain that perfectly matches the process rules can be constructed based on the process data showing successful business results. These chained business call chains are then merged, and the number of calls and / or business call results for each step in the same process stage are summarized to build a business call chain corresponding to the actual business process. Alternatively, when constructing a business call chain, the number of calls and / or business call results for each step in the same process stage can be summarized first, and then chained together according to the call relationships shown in the business process rules to ultimately construct the business call chain.

[0057] In this embodiment, for business systems without prior unified planning, the process rules of the business are sorted out, the interface call relationships of the business are constructed using regular expression matching, and massive log information is analyzed to construct the business call chain in a forward manner, thus realizing the connection of business processes. This avoids extensive system modifications and disruption to existing business processes, and solves the problem that business systems without prior unified planning struggle to achieve business process connection due to inconsistent log information formats and the lack of a global call tracking identifier (traceID).

[0058] In one embodiment, step 200 may further include:

[0059] Step 201: Obtain the service configuration information of the group process data; based on the service configuration information, parse each return message information in the group process data into a first expression; wherein each group of process data in the group process data includes one or more return message information; and the service configuration information includes system code and system call relationship.

[0060] In this embodiment, Flink stream processing is used to analyze the business results of each group of process data. Specifically, the business configuration information of each group of process data is first obtained. This business configuration information includes system codes and system call relationships. The system codes are used to identify each business system in a coded form for easier differentiation and matching in subsequent processing. The system call relationships indicate which business systems can be called at each process node of the business process, and the number of times they are called (0 to multiple times or 1 to multiple times). Further, the business configuration information may also include switch control information. Based on the switch control information, the process data that needs to be analyzed is determined. Then, each return message in each group of process data is parsed into a first expression based on the system codes. Specifically, based on the pre-configured system codes of each business system, each return message is parsed into the code of its corresponding business system. The system codes are used as the step codes of the corresponding business process, transforming the call relationships between systems into call relationships between steps. This allows complex and diverse log information to be parsed into a uniformly formatted expression. The parsed first expression contains the field information required for result analysis. Each group of process data contains one or more return message messages.

[0061] Step 202: Identify the variable information in the first expression and replace the variable information with preset field information to obtain the second expression. The variable information includes user identifier and terminal identifier.

[0062] Due to data redundancy caused by variables in the returned message description, data cleaning is required. Specifically, this involves identifying and replacing variables in the description to obtain the second expression. Algorithms such as TF-IDF (Term Frequency-Inverse Document Frequency) are used to identify variables in the first expression, replacing the identified variables with specific field information, such as the symbol "$". The variables to be identified and replaced include user identifiers (e.g., ID card number) and terminal identifiers (e.g., mobile phone number).

[0063] Step 203: Perform semantic recognition on the result description information in the second expression, and determine the business result of the second expression based on the recognized semantic information.

[0064] Semantic recognition is performed on the result description information of the variable information identification and replacement in the second expression. Based on the identified semantic information, the business result of the second expression is determined, thereby obtaining the business result of each return message information in each group of process data.

[0065] Furthermore, due to the complexity of business scenarios, the result descriptions in the returned message information are complex and diverse. Different returned results may contain different types of descriptions, and the same summary returned result may also contain different prompts. Therefore, when configuring information in advance, a business user dictionary can also be configured for business vocabulary management. This dictionary is used as a word segmentation dictionary in the result descriptions of the returned message information and as a judgment basis during the aggregation and cleaning process of the result descriptions. Specifically, business results are categorized and labeled, with possible categories including "success," "failure," and "warning." When performing semantic recognition on the result descriptions in the returned message information, the result descriptions are labeled using dictionary combinations to divide the semantic meaning, thereby determining whether the corresponding business result is "success," "failure," or "warning."

[0066] Furthermore, to facilitate subsequent identification, a result feature code field can be added to the expression corresponding to the process data. A digest algorithm such as SHA1 (Secure Hash Algorithm 1) is used to calculate the business result feature value. The business result is then saved as a feature value and its fields are split, with different fields recorded in a dictionary table. For example, a business message of the form {"$.RETMSG":"","$.RETVAL":"Y"} can be split into two fields and recorded in a dictionary table for use in combination configuration. It matches the configuration of the combination table, and by combining parameters, it maximizes the match with the ID of the associated table to obtain the business result tag.

[0067] In this embodiment, by parsing the process data, the return message information in the process data is parsed into expressions, and the result description content in the return message information is cleaned and marked to reduce redundant data interference. This can reduce the amount of calculation in the subsequent process data matching process, improve matching efficiency, and also help improve the accuracy of the business call chain.

[0068] In one embodiment, step 300 may further include:

[0069] Step 301: Obtain the business identifier information corresponding to each group of process data in the grouped process data; and determine the target rule corresponding to each group of process data from the preset business process rules based on the business identifier, wherein the business process rule is a regular expression.

[0070] When performing regular expression matching on each group of process data, the business identifier information corresponding to each group of process data is first obtained. This business identifier information is used to distinguish different businesses, such as account opening services and package change services. Different businesses correspond to different process rules. Based on the business identifier information of different groups of process data, the target rule corresponding to each group of process data is determined from the preset process rules. It can be understood that the preset business process rules are regular expressions.

[0071] Step 302: Match the second expression in each group of process data with the target rule, and determine the concatenation order of each second expression based on the business result;

[0072] When connecting business processes, the second expression parsed from each group of process data is matched with its corresponding target rule, and the connection order of each parsed second expression in the same group of process data is determined by combining the business results.

[0073] Step 303: Connect the various groups of process data into a business call chain according to the concatenation order.

[0074] Based on the concatenation order of each group of process data, the parsed process data within the same group are concatenated into a business call chain. It is known that within the same business process, the same process node may generate one or more calls to the same business step. Therefore, the same group of process data may contain one or more return message messages for the same business step. When multiple return message messages exist, the result description of each message may be different, corresponding to different business results. For the same process node, when concatenating business processes, one can first summarize the number of step calls and / or business results, and then concatenate different business nodes to construct a business call chain. Alternatively, one can first concatenate the process data based on the business results, constructing one or more business call sub-chains to form a tree-like call relationship subgraph, and then summarize the number of calls and business results for the same process node to form the final business call chain corresponding to the actual business process.

[0075] Furthermore, based on the constructed call relationship chains of various business processes, the call chains of the same business processes are merged and summarized to obtain a summary of business call relationships in this business scenario, which is helpful to discover and analyze potential faults in various business scenarios from a macro perspective.

[0076] Furthermore, prior to step 300, the business process concatenation method provided in this application embodiment further includes:

[0077] Step 310: Create a cache list and compare the process processing time corresponding to each group of process data in the grouped process data with a preset timeout threshold.

[0078] Step 320: If the process processing time is less than or equal to a preset timeout threshold, then the process data is cached in the cache list for matching and retrieval.

[0079] Step 330: If the process processing time exceeds a preset timeout threshold, the process data is marked as timeout process data and stored in the database.

[0080] Before performing regular expression matching on each group of process data, a preliminary screening is performed to confirm whether the data has timed out. If it is timed out, it is processed for storage. If it is not timed out, the business process is linked together using regular expression matching. Specifically, a cache list is created. The processing time of each group of process data that has passed through the stream processing is compared with a preset timeout threshold in sequence. This timeout threshold can be stored in the list, for example, as the last data in the list. The processing time of each group of process data is compared with the last data in the list. If it is greater than the preset timeout threshold, the group of process data is processed for storage as timed out, then the list is cleared, and the next group of process data that has passed through the stream processing is retrieved. If it is less than or equal to the preset timeout threshold, the group of process data is cached in the list and regular expression matching begins.

[0081] The specific process of performing regular expression matching on the cached process data in the list is as follows: If a complete match is found, it means that the current cached set of process data is a complete business process. The cached data in the list is sent to the next inbound task for processing, and the list is cleared. If a partial match is found, it is confirmed whether the matching returned a successful business processing result. If so, it is confirmed whether the system call relationship configured in the business configuration information of the current business process is 0 to multiple. If not, the cached data in the list is marked as failed process data and sent to the next inbound task for processing, and the cached data in the list is cleared. If no match is found, the cached data in the list is deleted.

[0082] The returned business processing result is the final business processing result of the business process. This result is determined based on the business results of the returned message information corresponding to each process node in each set of process data, as well as the business configuration information of the business process. Specifically, when the process data partially matches the business process rules, if the system call relationship configuration in the business configuration information of the missing process node is 0 to multiple times, it means that the system on that process node does not need to be called. If the business results returned by the system calls on other process nodes are all successful, it means that the business processing result of the business process is successful. This business processing result can be obtained by combining the result feature values ​​of each set of process data based on the sorted business process rules.

[0083] In this embodiment, the business process rules corresponding to each group of process data are determined by the business identification information. Based on the business process rules, regular expression matching can be performed to quickly determine the calling relationship of the collected log information in the business process, thereby determining the sequence order and completing the connection of the business processes.

[0084] In one embodiment, step 100 includes:

[0085] Step 101: Obtain the convergence implementation class information of each business system that generates the log information;

[0086] For business systems without a pre-defined unified plan, obtaining log information in a standardized format to construct a business call chain and connect business processes requires extensive system modifications. This is not only technically difficult but may also impact existing business processes. In this embodiment, however, log information is collected by inserting codes into each business system, eliminating the need to modify the business systems and achieving non-intrusive log collection.

[0087] Specifically, when performing code insertion processing on business systems, the first step is to collect the convergence implementation class information of each business system that needs to collect log information. This convergence implementation class information determines the unified exit and entry points of the business systems. Within a business system, the user first sends a request through the frontend. The request reaches the front controller (DispatcherServlet) of the business system for unified distribution. The front controller is the central hub in the business system responsible for data interaction between the frontend and backend. It provides a unified request processing interface to verify and trace requests and return corresponding data to the frontend user based on the user's request. Since the implementation of the front controller is based on defined class information, the unified entry and exit points for processing system requests can be determined based on the acquired system convergence implementation class information.

[0088] Step 102: Perform code insertion processing on each of the business systems according to the convergence implementation class information. The code insertion processing includes unified entry code insertion and unified exit code insertion.

[0089] Based on the convergence implementation class information of the acquired business systems, code insertion processing is performed on the unified exit and unified entry points of each business system. This code insertion processing includes two types: entry methods and exit methods, namely unified entry code insertion and unified exit code insertion. Among them, the entry method is the method that every business request must go through when entering the business system, and it is the unified entry point of the entire business system. The exit method is the method by which the target system calls other systems.

[0090] Step 103: Based on the unified entry code and the unified exit code, obtain the parameter information of the log information at the unified entry and unified exit of each of the business systems. The parameter information includes trace ID, session ID, and request input / output parameters. The trace ID is generated when the business system initiates a business process based on the code insertion processing of each of the business systems.

[0091] The entry point method serves as the unified entry point for the entire business system. By inserting code into this unified entry point, it's possible to obtain parameter information such as the session ID and request input / output parameters passed by the client each time the business system is invoked. It can also obtain the trace ID passed from the previous system to be passed to the next invoked system, forming a trace identifier for the business call chain.

[0092] As the unified exit point for the entire business system, the exit method only needs to insert a code into the unified entry point to obtain the input and output parameters of the request to be sent to the next system, and pass the traceID to the next system when making the call.

[0093] By inserting codes into the unified entry and exit points of the business system, log information and its parameter information are collected. Then, the collected information is written to the message queue asynchronously in a unified format through the cache queue. The log format written to the message queue is adjustable.

[0094] Furthermore, the traceID transmitted across business systems is generated when a business system initiates a business process, based on interpolation processing of each system. By interpolating each system, a unified traceID can be generated when a business process is initiated in different systems, serving as a unique identifier for that business process. Compared to uniformly planning and generating globally called traceIDs for business systems, generating cross-system transmitted traceIDs for process tracing through interpolation processing requires minimal modification to the business systems themselves, reducing the impact on the existing business processes. Moreover, the traceIDs generated through interpolation processing are customizable, meeting users' individual needs and facilitating maintenance.

[0095] In this embodiment, log collection is achieved by performing non-intrusive code insertion on each business system, and the collected log information is written to the message queue asynchronously in a unified format through a cache queue, thus achieving non-intrusive, customized, and controllable log collection.

[0096] In one embodiment, after step 300, the business process chaining method provided in this application embodiment further includes:

[0097] Step 400: Mark the business processing result of the business call chain, and perform batch data entry processing on the business call chain according to the business processing result;

[0098] Step 500: Visualize the business call chain that has been entered into the database.

[0099] Reference Figure 2 , Figure 2 This is a schematic diagram illustrating the processing flow of the collected log information in this embodiment. Figure 2In this application service cluster, various business systems requiring log information collection are included. Log information and parameter information are collected from each system through code insertion. The collected log information is asynchronously written to a Kafka cluster for caching. The cached log information is then sent to a Flink cluster for stream processing. The resulting business data is stored in the full-text search engine Elasticsearch, and the stream-processed data is stored in a database. The data obtained after Flink cluster processing mainly includes full data and statistical data, which need to be partitioned and stored in different databases. The full log data includes the business call chains marked with the business processing results after Flink stream processing, as well as the collected raw log information, and is stored in the distributed storage system HBase for log persistence. The statistical data is stored in the relational database MySQL, mainly including the business call chains marked with Flink stream processing, and data such as the number of requests, average request duration, and request success rate calculated by each process node based on the constructed business call chains. In Flink stream processing, the business processing results of the business call chains are marked based on the regular expression matching analysis results, and the business call chains are then batch-stored into the database based on these results. The business processing results include success, failure, and timeout process data. Statistical analysis and data entry are performed separately for process data with different business processing results, which facilitates the generation of statistical data from different dimensions based on the varying business processing outcomes. When a user queries stored data, Elasticsearch (ES) retrieves the data stored in the application service based on the user's search criteria and generates corresponding charts. These charts are then displayed to the user on the web interface via the query interface.

[0100] Furthermore, step 400 may also include:

[0101] Step 401: Create a blocking queue and cache the business call chain in the blocking queue;

[0102] Step 402: When the number of service call chains cached in the blocking queue is greater than a preset number, the service call chains cached in the blocking queue are added to the database; or, at preset intervals, a preset number of service call chains are extracted from the blocking queue and added to the database.

[0103] When performing batch data entry processing on business call chains marked with business processing results, a blocking queue is first created. The business call chains obtained after stream processing are cached in this queue. When the number of cached business call chains in the blocking queue exceeds a preset limit, all cached business call chains in the blocking queue are processed for batch data entry at once. Alternatively, every preset time interval, such as 5 minutes, a number of cached business call chains are extracted from the blocking queue and processed for batch data entry at once. This timed or quantitative approach ensures data entry performance. Furthermore, a combination of timed and quantitative methods can be used. For example, when the number of cached business call chains in the blocking queue exceeds a preset limit, all cached business call chains are processed for batch data entry at once. If the number of cached business call chains in the blocking queue does not exceed the preset limit, but the waiting time for data entry in the blocking queue has exceeded the preset time, all cached business call chains in the blocking queue are processed for data entry at once, ensuring timely data entry.

[0104] Furthermore, the business call chains entered into the database are visualized. This visualization includes summary data of business call chains within the same business process, as well as detailed information on each business call chain, such as... Figure 3 As shown ( Figure 3 The data in this document is for illustrative purposes only and has no practical significance. Figure 3 In the process, users input the business process they want to query and a time range. Based on the user's query conditions, the system retrieves visualized data of the business call chain constructed from log information within the corresponding time range. The visualized content includes the complete business call chain and its configuration information, statistical data for each process stage, etc. Furthermore, Figure 3 The number of request interceptions refers to the number of times a call request is intercepted during business processing, with corresponding business processing results such as failure or a notification. The request approval or interception rules are formed by combining business result feature values ​​in advance based on business rules. Through pre-set approval / interception rules, when a request arrives, if the business data does not conform to the approval rules, the request is intercepted, thereby generating the business result corresponding to that process node. Combining the business results of each process node determines the processing result of the entire business process. Furthermore, in... Figure 3 In the system, details are set below each process node in the business call chain, allowing users to query detailed business process information for that node, such as each business call chain and its corresponding log information. This helps users query business process information from different dimensions, promptly identify problems and analyze their causes, and ensure the availability of business processes and business systems.

[0105] In this embodiment, a blocking queue is created to batch insert the constructed business call chain into the database, ensuring the performance of the insertion process. At the same time, by visually displaying the inserted business call chain, users can promptly identify problems and analyze their causes, thus ensuring the availability of business processes and systems.

[0106] The following describes the business process concatenation device provided in the embodiments of this application. The business process concatenation device described below can be referred to in correspondence with the business process concatenation method described above.

[0107] Reference Figure 4 The business process serialization device provided in this application embodiment includes:

[0108] The data acquisition and classification module 10 is used to acquire parameter information of the collected log information and divide the log information into grouped process data according to the parameter information.

[0109] The business result analysis module 20 is used to perform result analysis on the grouping process data and determine the business result of the grouping process data;

[0110] The regular expression analysis and matching module 30 is used to perform regular expression matching between the grouped process data and the preset business process rules according to the business results, so as to connect the grouped process data into a business call chain.

[0111] In one embodiment, the business results analysis module 20 is further configured to:

[0112] Obtain the business configuration information of the grouped process data, and parse each return message information in the grouped process data into a first expression based on the business configuration information. Each group of process data in the grouped process data includes one or more return message information, and the business configuration information includes system code and system call relationship.

[0113] Identify the variable information in the first expression and replace the variable information with preset field information to obtain the second expression. The variable information includes user identifier and terminal identifier.

[0114] Semantic recognition is performed on the result description information in the second expression, and the business result of the second expression is determined based on the recognized semantic information.

[0115] In one embodiment, the regular expression analysis and matching module 30 is further configured to:

[0116] Obtain the business identifier information corresponding to each group of process data in the grouped process data, and determine the target rule corresponding to each group of process data from the preset business process rules based on the business identifier, wherein the business process rule is a regular expression;

[0117] The second expression in each group of process data is matched with the target rule, and the concatenation order of each second expression is determined according to the business result;

[0118] The process data from each group are concatenated into a business call chain according to the concatenation order.

[0119] In one embodiment, the data acquisition and classification module 10 is further configured to:

[0120] Obtain the convergence implementation class information of each business system that generated the log information;

[0121] Based on the convergence implementation class information, code insertion processing is performed on each of the business systems. The code insertion processing includes unified entry code insertion and unified exit code insertion.

[0122] Based on the unified entry code and the unified exit code, parameter information of the log information is obtained at the unified entry and unified exit of each of the business systems. The parameter information includes trace ID, session ID, and request input / output parameters. The trace ID is generated when the business system initiates a business process based on the code insertion processing of each of the business systems.

[0123] In one embodiment, the business process concatenation device further includes a data caching module, used for:

[0124] Create a cache list and compare the process processing time corresponding to each group of process data in the grouped process data with a preset timeout threshold;

[0125] If the processing time of the process is less than or equal to the preset timeout threshold, the process data is cached in the cache list for matching and retrieval.

[0126] If the processing time of the process exceeds the preset timeout threshold, the process data is marked as timeout process data and then entered into the database.

[0127] In one embodiment, the business process concatenation device further includes a data visualization module, used for:

[0128] The business processing results of the business call chain are marked, and the business call chain is batch-stored based on the business results;

[0129] Visualize the business call chain of the data entering the database.

[0130] In one embodiment, the data visualization module is further configured to:

[0131] Create a blocking queue and cache the business call chain in the blocking queue;

[0132] When the number of service call chains cached in the blocking queue exceeds a preset number, the service call chains cached in the blocking queue are added to the database. Alternatively, a preset number of service call chains are extracted from the blocking queue and added to the database every preset time interval.

[0133] Figure 5 An example is a schematic diagram of the physical structure of an electronic device, such as... Figure 5 As shown, the electronic device may include: a processor 510, a communication interface 520, a memory 530, and a communication bus 540, wherein the processor 510, the communication interface 520, and the memory 530 communicate with each other via the communication bus 540. The processor 510 can call a computer program in the memory 530 to execute the steps of a business process concatenation method, such as including:

[0134] Obtain parameter information from the collected log information, and divide the log information into grouped process data that match the parameter information;

[0135] Analyze the grouping process data to determine the business outcome of the grouping process data;

[0136] Based on the business results, the grouped process data is matched with preset business process rules using regular expressions to connect the grouped process data into a business call chain.

[0137] Furthermore, the logical instructions in the aforementioned memory 530 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0138] On the other hand, this application also provides a computer program product, which includes a computer program that can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer can perform the steps of the business process chaining method provided in the above embodiments, such as including:

[0139] Obtain parameter information from the collected log information, and divide the log information into grouped process data that match the parameter information;

[0140] Analyze the grouping process data to determine the business outcome of the grouping process data;

[0141] Based on the business results, the grouped process data is matched with preset business process rules using regular expressions to connect the grouped process data into a business call chain.

[0142] On the other hand, embodiments of this application also provide a processor-readable storage medium storing a computer program for causing a processor to perform the steps of the methods provided in the above embodiments, such as including:

[0143] Obtain parameter information from the collected log information, and divide the log information into grouped process data that match the parameter information;

[0144] Analyze the grouping process data to determine the business outcome of the grouping process data;

[0145] Based on the business results, the grouped process data is matched with preset business process rules using regular expressions to connect the grouped process data into a business call chain.

[0146] The processor-readable storage medium can be any available medium or data storage device that the processor can access, including but not limited to magnetic memory (e.g., floppy disk, hard disk, magnetic tape, magneto-optical disk (MO)), optical memory (e.g., CD, DVD, BD, HVD), and semiconductor memory (e.g., ROM, EPROM, EEPROM, non-volatile memory (NAND FLASH), solid-state drive (SSD)).

[0147] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.

[0148] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.

[0149] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application.

Claims

1. A method for connecting business processes, characterized in that, Includes the following steps: Obtain parameter information from the collected log information, and divide the log information into grouped process data based on the parameter information; Analyze the grouping process data to determine the business outcome of the grouping process data; Based on the business results, the grouped process data is matched with preset business process rules using regular expressions to connect the grouped process data into a business call chain; The step of analyzing the grouped process data to determine the business result of the grouped process data includes: obtaining the business configuration information of the grouped process data; parsing each return message information in the grouped process data into a first expression based on the business configuration information, wherein each group of process data in the grouped process data includes one or more return message information, and the business configuration information includes system codes and system call relationships; identifying variable information in the first expression and replacing the variable information with preset field information to obtain a second expression, wherein the variable information includes user identifiers and terminal identifiers; performing semantic recognition on the result description information in the second expression, and determining the business result of the second expression based on the identified semantic information; The step of performing regular expression matching between the grouped process data and preset business process rules based on the business results to concatenate the grouped process data into a business call chain includes: obtaining business identifier information corresponding to each group of process data in the grouped process data; determining the target rule corresponding to each group of process data from the preset business process rules based on the business identifier, wherein the business process rule is a regular expression; matching the second expression in each group of process data with the target rule, and determining the concatenation order of each second expression based on the business results; and concatenating each group of process data into a business call chain according to the concatenation order.

2. The business process concatenation method according to claim 1, characterized in that, The step of obtaining parameter information from the collected log information includes: Obtain the convergence implementation class information of each business system that generated the log information; Based on the convergence implementation class information, code insertion processing is performed on each of the business systems, including unified entry code insertion and unified exit code insertion. Based on the unified entry code and the unified exit code, parameter information of the log information is obtained at the unified entry and unified exit of each of the business systems. The parameter information includes trace ID, session ID, and request input / output parameters. The trace ID is generated when the business system initiates a business process based on the code insertion processing of each of the business systems.

3. The business process concatenation method according to claim 1, characterized in that, Before the step of performing regular expression matching between the grouped process data and preset business process rules based on the business results to concatenate the grouped process data into a business call chain, the method further includes: Create a cache list and compare the processing time of each group of process data in the grouped process data with a preset timeout threshold; If the processing time of the process is less than or equal to the preset timeout threshold, the process data is cached in the cache list for matching and retrieval. If the processing time of the process exceeds the preset timeout threshold, the process data is marked as timeout process data and then entered into the database.

4. The business process concatenation method according to claim 1, characterized in that, After the step of performing regular expression matching between the grouped process data and preset business process rules based on the business results to concatenate the grouped process data into a business call chain, the method further includes: The business processing results of the business call chain are marked, and the business call chain is batch-stored based on the business results; Visualize the business call chain of the data entering the database.

5. The business process concatenation method according to claim 1, characterized in that, The step of batch importing the business call chain into the database includes: Create a blocking queue and cache the business call chain in the blocking queue; When the number of service call chains cached in the blocking queue exceeds a preset number, the service call chains cached in the blocking queue are added to the database. Alternatively, at preset intervals, a preset number of service call chains are extracted from the blocking queue and added to the database.

6. A business process serialization device, characterized in that, include: The data acquisition and classification module is used to obtain parameter information of the collected log information and divide the log information into grouped process data according to the parameter information. The business results analysis module is used to perform results analysis on the grouping process data and determine the business results of the grouping process data. The regular expression analysis and matching module is used to perform regular expression matching between the grouped process data and the preset business process rules according to the business results, so as to connect the grouped process data into a business call chain. The business result analysis module is further configured to: acquire business configuration information of the grouped process data; parse each return message information in the grouped process data into a first expression based on the business configuration information, wherein each group of process data in the grouped process data includes one or more return message information, and the business configuration information includes system codes and system call relationships; identify variable information in the first expression and replace the variable information with preset field information to obtain a second expression, wherein the variable information includes user identifiers and terminal identifiers; perform semantic recognition on the result description information in the second expression, and determine the business result of the second expression based on the identified semantic information; The regular expression analysis and matching module is further configured to: obtain business identifier information corresponding to each group of process data in the grouped process data; determine the target rule corresponding to each group of process data from the preset business process rules according to the business identifier, wherein the business process rule is a regular expression; match the second expression in each group of process data with the target rule, and determine the concatenation order of each second expression according to the business result; and concatenate each group of process data into a business call chain according to the concatenation order.

7. An electronic device comprising a processor and a memory storing a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the business process chaining method according to any one of claims 1 to 5.

8. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the steps of the business process chaining method according to any one of claims 1 to 5.

Citation Information

Patent Citations

  • Network fault positioning method of business call chain based on log analysis

    CN114064718A

  • Method and system for correlation and management of distributed and heterogeneous events

    US20180013773A1