A business process monitoring method, system, device and readable storage medium
By visualizing the status nodes in the business process and generating monitoring tasks, the problem that existing technology cannot monitor business processes is solved, real-time monitoring and abnormal discovery of business processes is achieved, and user influence is avoided.
Patent Information
- Application Number
- CN202011604385.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-12-29
- Publication Date
- 2024-12-24
- Estimated Expiration
- 2040-12-29
AI Technical Summary
The existing monitoring system cannot monitor business processes, which makes it difficult to detect business process problems before or after the business goes online. It is not until obvious user problems or serious impacts occur, and abnormalities cannot be discovered in time.
By visualizing the status nodes in the business process as status nodes, obtaining event messages, performing monitoring event matching verification, and automatically generating and executing monitoring tasks to realize real-time monitoring of the business process.
Real-time monitoring of business processes is realized, abnormal situations are discovered in a timely manner, and user influence is avoided due to business process problems.
Smart Images

Figure CN113722173B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of monitoring technology, and in particular to a business process monitoring method, system, device and readable storage medium. Background Art
[0002] Most of the existing monitoring systems are technical indicator-based monitoring, such as system anomalies, system memory, CPU indicators, method time consumption, interface availability, call times, etc. In other words, the existing monitoring systems can only solve technical monitoring, but cannot achieve business process monitoring.
[0003] However, due to reasons such as lax development of business processes, it is easy to cause problems in business processes, but it is difficult to detect before the business goes online. Even after going online, because the existing monitoring system cannot monitor business processes, it often only pays attention to business process problems after obvious user problems or serious adverse effects occur.
[0004] In summary, how to implement business process supervision and other issues are technical problems that technical personnel in this field urgently need to solve. Summary of the invention
[0005] In view of this, the purpose of the present application is to provide a business process monitoring method, system, device and readable storage medium, so that by visualizing each state in the business process as a state node, it can be determined whether a monitoring event is currently generated, and when a monitoring event is generated, a monitoring task is automatically generated and executed, thereby realizing business process monitoring.
[0006] To solve the above technical problems, in a first aspect, the present application provides a business process monitoring method, comprising:
[0007] Get the event message of the status node in the business process;
[0008] Performing monitoring event matching verification on the event message;
[0009] In the case where the event message matches the monitoring event, generating a monitoring task corresponding to the event message;
[0010] Execute the monitoring task.
[0011] In a feasible implementation manner, the obtaining of the event message of the state node in the business process includes:
[0012] Receive a status message sent by the business system where the business process is located;
[0013] The status message is converted into the event message.
[0014] In another feasible implementation manner, performing monitoring event matching verification on the event message includes:
[0015] Reading the history status from the event message;
[0016] If the historical status does not match the preset status change sequence, it is determined that the event message matches the monitoring event.
[0017] In another feasible implementation manner, the generating a monitoring task corresponding to the event message includes:
[0018] Get monitoring parameters from monitoring rules;
[0019] Determining a monitoring object matching the monitoring event from the event message;
[0020] The monitoring task for monitoring the monitoring object is generated according to the monitoring parameters.
[0021] In another feasible implementation manner, executing the monitoring task includes:
[0022] Acquiring monitoring data of the monitored object according to the data collection frequency in the monitoring parameters;
[0023] When the monitoring data triggers an alarm event, an alarm message is sent to the business system corresponding to the business process so that the business system can perform self-checking and compensation processing.
[0024] In another feasible implementation, it also includes:
[0025] Receiving and storing the self-check compensation processing result fed back by the business system;
[0026] When an alarm query is received, the self-check compensation processing result is output.
[0027] In a second aspect, the present application also provides a business process monitoring system, including:
[0028] Event engine and task scheduling engine;
[0029] The event engine is used to obtain event messages of state nodes in a business process; perform monitoring event matching verification on the event messages; and generate a monitoring task corresponding to the event messages when the event messages match the monitoring events;
[0030] The task scheduling engine is used to execute the monitoring task.
[0031] In a third aspect, the present application further provides an electronic device, including:
[0032] Memory for storing computer programs;
[0033] A processor is used to implement the steps of the above-mentioned business process monitoring method when executing the computer program.
[0034] In a fourth aspect, the present application further provides a readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the steps of the above-mentioned business process monitoring method are implemented.
[0035] The business process monitoring method provided in the present application obtains the event message of the status node in the business process; performs monitoring event matching verification on the event message; when the event message matches the monitoring event, generates a monitoring task corresponding to the event message; and executes the monitoring task.
[0036] It can be seen that in this method, the event message of the state node in the business process is obtained, and then the monitoring event matching check is performed on the event message, that is, whether a monitoring event has been generated. When the event message matches the monitoring event, it is determined that a monitoring event has been generated, and a monitoring task corresponding to the event message can be generated, and then the monitoring task can be executed. In other words, by treating each state in the business process as an independent state node, each state node of the business process can be effectively monitored, and a monitoring task can be automatically generated when a monitoring event is generated. By executing the monitoring task, abnormal situations in the business process can be discovered in a timely manner. That is, this method realizes the monitoring of the business process.
[0037] Correspondingly, the present application also provides a business process monitoring system, an electronic device and a readable storage medium corresponding to the above-mentioned business process monitoring method, which have the above-mentioned technical effects and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0038] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the related technologies, the drawings required for use in the embodiments or the related technical descriptions are briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0039] Figure 1 This is a flowchart of an implementation method of a business process monitoring method in an embodiment of the present application;
[0040] Figure 2 This is a schematic diagram of an order transaction process in an embodiment of the present application;
[0041] Figure 3 This is a structural diagram of a business process monitoring system in an embodiment of the present application;
[0042] Figure 4 A schematic diagram of a specific business process monitoring system in an embodiment of the present application;
[0043] Figure 5 This is a schematic diagram of the structure of an electronic device in an embodiment of the present application;
[0044] Figure 6 This is a schematic diagram of the specific structure of an electronic device in an embodiment of the present application. DETAILED DESCRIPTION
[0045] In order to enable those skilled in the art to better understand the present application, the present application is further described in detail below in conjunction with the accompanying drawings and specific implementation methods. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in the field without making creative work are within the scope of protection of the present application.
[0046] The business process monitoring method provided in the present application can be applied to a business process monitoring system. Among them, the business process refers to the business flow trajectory, including process nodes and upstream and downstream relationships of process nodes. It should be noted that compared with the technical indicator type monitoring system, since the business process monitoring method provided in the present application is a method for solving the business process monitoring problem, the business process monitoring system that applies the business process monitoring method has a communication link with the business system that needs to monitor the business process, and can obtain event messages of the business process in the business system. Of course, the business process monitoring system can also feedback alarm information to the business system. Taking into account the different ways in which business systems and business process monitoring systems transmit messages, an event adapter can also be set in the business process monitoring system to convert messages in the business system into event messages that can be processed by the event engine in the business process monitoring system. The specific architecture of the business process monitoring system can refer to Figure 3 The architecture shown does not elaborate on the specific communication relationships and functional roles of each device and component (a set of processing logic codes) in the system.
[0047] For the specific implementation of the business process monitoring method, please refer to Figure 1 , Figure 1 This is a flowchart of a business process monitoring method in an embodiment of the present application, the method comprising the following steps:
[0048] S101. Obtain event messages of status nodes in a business process.
[0049] Among them, the business process can be specifically a process that can be divided into different states / links. In the embodiment of the present application, there is no limitation on which states / links the business process specifically includes, and the number of states is not limited. In the embodiment of the present application, each state link in the business process that needs to be monitored can be visualized in advance as a state node, which can be referred to as a node. That is, in this embodiment, a node refers to each link or state of the business process flow. That is, if a business process specifically includes M states, in actual applications, there are N states (1≤N≤M) that need to be monitored, and only N of the states are visualized as N state nodes.
[0050] Taking the order transaction process as an example, the order transaction process generally has status links such as order placement, payment completion, order completion, invoicing, and order cancellation. Therefore, these status links can be visualized as status nodes, that is, order placement, payment completion, order completion, invoicing, and order cancellation correspond to different status nodes.
[0051] In order to facilitate the management of each status node, when creating a status node, you can set a node name (you can directly use the status name to name it, such as the order status corresponds to the order node) and a node code (i.e., node ID) for each status node.
[0052] In order to achieve more fine-grained monitoring and management, different label information can be set for the status nodes, for example, to indicate that each status node belongs to the start node, intermediate node or end node. For example, the status node corresponding to the order placement is marked as the start node, the status nodes corresponding to the payment completion, order completion and invoicing are marked as intermediate nodes, and the status nodes corresponding to the order cancellation and invoicing are marked as end nodes.
[0053] An event message is a message that can be processed by the computer engine, that is, the event message is a standardized message. An event message includes parameters related to the event that occurred. Taking the order transaction process as an example, for the order status node, its event message can specifically include parameters such as order number, order time, order user ID, order status node ID, monitoring rule ID, etc.
[0054] In the embodiment of the present application, the business process monitoring system can directly monitor the state node and directly obtain its event message, such as setting the data collection and reporting component of the business process monitoring system in the business process; it can also obtain the event message by receiving the event message sent by the external system or device. If the message sent by the external system or device does not conform to the event message specification, the message can also be converted and processed to obtain the event message. As for how to convert the message into an event message, the specific format and specification definition of the message before and after the conversion can be specifically referred to, and will not be repeated here.
[0055] S102: Perform monitoring event matching verification on the event message.
[0056] In an embodiment of the present application, different or identical matching verification parameters of monitoring events, such as verification thresholds, can be configured for each state node respectively. Of course, considering the differences between different states, in order to perform customized monitoring of each state, different matching verification parameters can be preferably configured for each state node. For ease of management, the matching verification parameters can be recorded in the monitoring rules. In addition, since relevant monitoring parameters are also required when producing monitoring tasks, the monitoring parameters can also be recorded in the monitoring rules. Specifically, a manual interaction interface for monitoring rules can be set, and all parameters and contents that can be set are displayed to the user in the manual interaction interface. For parameter settings, it can include the numerical setting corresponding to the inspection time, the numerical setting corresponding to the number of repetitions, the communication parameters corresponding to the alarm (such as the mobile phone number corresponding to the alarm, the email address), and the monitoring component ID; for content settings, it can include the rule name, whether to open repeated monitoring, whether to alarm, etc. In this way, by obtaining the user's operating behavior, the corresponding monitoring rules are generated.
[0057] In an embodiment of the present application, after the event message is obtained, the monitoring rule can be used to perform a match check on the event message for the monitoring event. That is to say, the event message is compared with the monitoring rule to determine the correspondence between the current event message and the matching check parameters in the monitoring rule to determine whether the event message matches the monitoring event. Specifically, different monitoring event matching conditions can be set in the monitoring rules according to different business process monitoring requirements. For example, the matching condition can set a time condition, such as a duration threshold for duration timeout judgment, an abnormal time interval for an abnormal time point, and the matching condition can also be set to a user ID abnormality, such as an activity threshold for an abnormally active ID.
[0058] That is, the event message is detected according to the monitoring rule to determine whether a monitoring event is generated, that is, the monitoring rule records the matching condition for determining whether the event message matches the monitoring event.
[0059] If the event message does not match the monitoring event, you do not need to continue to pay attention to the currently acquired event message and can directly discard it. Of course, the event message can also be stored locally for subsequent statistics on abnormal situations of the event message (such as the frequency of event messages matching monitoring events, high-frequency status nodes that generate monitoring events, etc.), which can provide a data source for optimizing business systems.
[0060] It should be noted that in the embodiments of the present application, the event message can be specifically one piece of data or multiple pieces of data, and the event message matches the monitoring event, which means that at least one piece of data matches the monitoring event. For example, the link to which the event message belongs is the order cancellation state node in the order transaction process, and the event message can be specifically N pieces of data corresponding to N order cancellations, where N is a positive integer greater than 1. When a monitoring event occurs, it can be specifically one piece of data among the N pieces of data that matches the monitoring event, that is, one piece of order cancellation data generates a monitoring event, or it can be multiple pieces of data among the N pieces of data that match the monitoring event, that is, multiple order cancellation data simultaneously generates monitoring events, that is, multiple order cancellations are abnormal.
[0061] S103: When the event message matches the monitoring event, generate a monitoring task corresponding to the event message.
[0062] The monitoring task needs to be generated by comparing with the reference monitoring parameters, and the generated monitoring task is related to the event message. Specifically, the monitoring task can be specifically related to the one or more data in the event message that matches the monitoring event.
[0063] When it is clear that the event message matches the monitoring event, a monitoring task corresponding to the event message may be generated according to the monitoring regulations of the monitoring rule, ie, the monitoring parameters.
[0064] S104: Execute monitoring tasks.
[0065] After the monitoring task is generated, the monitoring task can be executed. Since the monitoring task is generated according to the monitoring rules and event messages, executing the monitoring task means effectively monitoring the abnormal situation corresponding to the event message matching the monitoring event according to the monitoring rules.
[0066] Specifically, in actual applications, the data collection work corresponding to the monitoring task can also be handed over to the business system that needs to be monitored, thereby reducing the workload of the business process monitoring system.
[0067] Apply the business process monitoring method provided in the embodiment of the present application to obtain event messages of status nodes in the business process; perform monitoring event matching verification on the event messages; when the event messages match the monitoring events, generate a monitoring task corresponding to the event messages; and execute the monitoring task.
[0068] It can be seen that in this method, the event message of the state node in the business process is obtained, and then the monitoring event matching check is performed on the event message, that is, whether a monitoring event has been generated. When the event message matches the monitoring event, it is determined that a monitoring event has been generated, and a monitoring task corresponding to the event message can be generated, and then the monitoring task can be executed. In other words, by treating each state in the business process as an independent state node, each state node of the business process can be effectively monitored, and a monitoring task can be automatically generated when a monitoring event is generated. By executing the monitoring task, abnormal situations in the business process can be discovered in a timely manner. That is, this method realizes the monitoring of the business process.
[0069] It should be noted that, based on the above embodiments, the embodiments of the present application also provide corresponding improved solutions. In the preferred / improved embodiments, the same steps or corresponding steps as those in the above embodiments can be referenced to each other, and the corresponding beneficial effects can also be referenced to each other, which will not be described one by one in the preferred / improved embodiments of this article.
[0070] In a specific embodiment of the present application, the above step S101 of obtaining the event message of the state node in the business process may specifically include:
[0071] Step 1: Receive a status message sent by the business system where the business process is located;
[0072] Step 2: Convert the status message into an event message.
[0073] For ease of description, the above two steps are combined for explanation below.
[0074] The business system will collect and process business data during the operation of the business process. Therefore, in this embodiment, the business system can also be used to collect status messages. Specifically, the business system can report the status node data through a data reporting component (a set of processing logic code). Alternatively, the business system collects and reports status messages to the business process monitoring system through a data collector or SDK (Software Development Kit, an independent program package that can be referenced and integrated by the system).
[0075] The status message specifically includes all the data content corresponding to the event message, but the data format is different from the event message format. Therefore, after the business process monitoring system receives the status message, it can convert the format of the status message to obtain the event message. For how to convert the status message into the event message, please refer to the specific format definition of the status message and the specific format definition of the event message, so as to perform the conversion. In this embodiment, the specific format of the status message and the specific format of the time message are not limited.
[0076] It can be seen that in this specific implementation, by converting the status information reported by the business system into event messages, the business process monitoring system can perform monitoring event matching verification on the event messages, convert the acquisition of event messages into receiving status messages and perform message format conversion, which can eliminate the data collection of the business process monitoring system and reduce the system performance occupied by the business process monitoring system.
[0077] In actual applications, the above-mentioned data reporting component can also be an independent data collection program deployed separately on the server. The process of collecting data can be specifically that the business system prints the order track data by printing logs. Then, the data collection program reads the log files printed by the business system through the specified directory to collect data, and reports it to the business process monitoring system through MQ messages. Among them, MQ (Message Queue) is a first-in-first-out data structure in the basic data structure. It can solve problems such as application decoupling, asynchronous messaging, and traffic peak shaving, and achieve high-performance, high-availability, scalable and eventually consistent architecture.
[0078] In a specific implementation of the present application, the above step S102 performs monitoring event matching verification on the event message, which may specifically include:
[0079] Step 1: Read the status retention time from the event message.
[0080] Among them, the state retention time is the time to stay in the state node. The state retention time can be directly read from the event message. If the state retention event is not recorded in the event message, the state retention time can be obtained by subtracting the time of entering the state node recorded in the event message from the current time. For example, for the event message of the order node, since the order state is entered when the order is initiated, the order initiation time can be read from the event message, and the order initiation time can be subtracted from the current time to obtain the state retention time corresponding to the order state; for the event message of the payment node, since the payment node is entered when the payment is initiated, the payment initiation time can be read from the event message, and the payment initiation time can be subtracted from the current time to obtain the state retention time corresponding to the payment state.
[0081] Step 2: If the state retention time is greater than the preset inspection time, it is determined that the event message matches the monitoring event.
[0082] After obtaining the status retention time, the status retention time can be compared with the inspection time pre-stored in the monitoring rules. If the status retention time is less than or equal to the inspection time, it means that the current status retention time has not reached the time requirement for monitoring and can be ignored; if the status retention time is greater than the inspection time, it means that the current status retention time has reached the time requirement for monitoring, and it can be determined that the event message matches the monitoring event.
[0083] It can be seen that in this specific implementation, the event message can be matched and checked based on the detection time by the detection time. In this way, the generation / matching of the monitoring event can be set and implemented based on the detection time from the time requirement. It is possible to timely discover the abnormal state retention time and quickly discover the monitoring event, so as to effectively monitor the abnormal situation in the future and find out the cause / influencing factor of the abnormal retention time.
[0084] In a specific implementation of the present application, the above step S102 performs monitoring event matching verification on the event message, which may specifically include:
[0085] Step 1: Read the historical status from the event message.
[0086] The historical state is the state before the current state.
[0087] In an embodiment, each historical state experienced may be recorded in the event message, such as being represented in the form of a state node ID. Therefore, the historical state is obtained from the event message by reading.
[0088] Step 2: If the historical status does not match the preset status change sequence, it is determined that the event message matches the monitoring event.
[0089] Considering that the state changes of each business process are relatively fixed, if there is an abnormal state change, effective monitoring is also required. Therefore, the state change sequence can be set in advance. The state change sequence should correspond to the specific business process. When it is found that the historical state in the event message does not match the state change sequence, it can be determined that the state change of the event message is abnormal, and the event message is determined to match the monitoring event; of course, if the historical state matches the state change sequence, it can be determined that the state change of the event message is normal, and the event message can be ignored.
[0090] Please refer to Figure 2Taking the order transaction process as an example, the state change sequence can be: order placement-payment completion / order cancellation, payment completion-order cancellation / order completion, order completion-invoicing. If the event message corresponds to the payment completion state node, and the historical state is order cancellation, it can be seen through comparison that the historical state of the event message is inconsistent with the order placement in the state change sequence, which means that the state change in the event message does not comply with the state change sequence in the monitoring rule. Therefore, it can be determined that the event message matches the monitoring event.
[0091] It can be seen that in this specific implementation, the state change sequence can be set in the monitoring rules, and the state change sequence can be used to promptly discover abnormal historical states in event messages, that is, to discover abnormal state changes, and to discover monitoring events, thereby achieving effective monitoring of abnormal state changes and finding out the causes / influencing factors that lead to abnormal states.
[0092] In a specific embodiment of the present invention, the two specific implementations of the above step S102 can be combined to achieve both the monitoring time requirement and the state monitoring requirement. Accordingly, step S102 can specifically include:
[0093] Step 1: Read the state retention time from the event message;
[0094] Step 2: Read the historical status from the event message;
[0095] Step three: if the state retention time is greater than the inspection time in the monitoring rule, and / or the historical state does not match the state change sequence in the monitoring rule, it is determined that the event message matches the monitoring event.
[0096] For ease of description, the above three steps are combined for explanation below.
[0097] It should be noted that in actual application, the above steps 1 and 2 may not be in order, that is, step 1 may be performed first and then step 2, or step 2 may be performed first and then step 1, or step 1 and step 2 may be combined for explanation. Accordingly, whether the detection state retention time is greater than the detection time, and whether the detection history state matches the state change sequence, may not be in order, and may be performed sequentially or in parallel.
[0098] Specifically, for how to read the status retention time and historical status from the time message, and detect whether the status retention time is greater than the detection time, and detect whether the historical status matches the status change sequence, you can refer to the specific description of the above-mentioned specific method, which will not be repeated here.
[0099] In the case where the state retention time is greater than the inspection time in the monitoring rules, and the historical state does not match the state change sequence in the monitoring rules, it can be determined that the event message matches the monitoring event. Of course, in the case where it is determined that the event message matches the monitoring event, it can also be specifically recorded what the specific reason for the monitoring event is, that is, whether the state retention time is greater than the inspection time in the monitoring rules, or whether the historical state does not match the state change sequence in the monitoring rules, or both, for the user to view.
[0100] In practical applications, in order to distinguish the matching verification conditions for different monitoring events, the monitoring rules can be further refined into different types. For example, for state retention timeout, a state retention timeout rule can be set, and for abnormal state change, a state change rule can be set. Accordingly, in different types of monitoring rules, different values or types of monitoring parameters can be set corresponding to the corresponding matching conditions (for example, for state retention timeout, the data collection frequency can be set), so as to generate targeted monitoring tasks for different matching conditions.
[0101] In a specific implementation of the present application, the above step S103 generates a monitoring task corresponding to the event message, which may specifically include:
[0102] Step 1: Get monitoring parameters from monitoring rules.
[0103] Among them, monitoring parameters are parameters related to monitoring, and specifically, monitoring parameters may include data collection frequency, monitoring component ID, and number of repetitions. Among them, data collection frequency refers to the collection cycle of monitoring data for the same object; monitoring component ID refers to which monitoring component is used to perform the monitoring task; and number of repetitions refers to the upper limit of the number of monitoring times, which corresponds to how many times the monitoring data can be collected.
[0104] Step 2: Determine a monitoring object that matches the monitoring event from the event message.
[0105] The event message records specific event information, such as state node ID, event ID (such as order ID), etc. Therefore, the monitoring object matching the monitoring event can be determined based on the event information. For example, the monitoring object can be specifically an order in a certain state environment.
[0106] Step 3: Generate a monitoring task for monitoring the monitored object according to the monitoring parameters.
[0107] After obtaining the monitoring object and the monitoring reference, a monitoring task can be generated to install the monitoring parameters to monitor the monitoring object.
[0108] It can be seen that in this embodiment, relevant monitoring parameters can be set in the monitoring rules as required, and then after determining that a monitoring event is generated, the monitoring object that generates the monitoring event can be determined from the event message, and then a monitoring task can be generated to monitor the monitoring object based on the monitoring parameters. That is, the monitoring task can be customized and generated, and the monitoring event can be quickly responded to and processed based on the monitoring task.
[0109] In a specific implementation of the present application, step S104 performs a monitoring task, which may specifically include:
[0110] Step 1: Obtain monitoring data of the monitored object according to the data collection frequency in the monitoring parameters.
[0111] When executing the monitoring task, the monitoring data of the monitored object is obtained according to the data collection frequency in the monitoring parameters. It should be noted that the method of obtaining the monitoring data can be specifically to send a monitoring data reporting request for the monitored object to the business system, and then the business system collects data for the monitored object according to the data collection frequency based on the reporting request and reports the collected monitoring data to the business process monitoring system.
[0112] Step 2: When the monitoring data triggers an alarm event, an alarm message is sent to the business system corresponding to the business process so that the business system can perform self-checking and compensation processing.
[0113] After obtaining the monitoring data, monitoring analysis can be performed based on the monitoring data. Specifically, the matching condition of the alarm event can be used to check the matching of the monitoring data for the alarm event. When it is detected that the monitoring data has triggered an alarm event, an alarm message can be sent to the outside. Of course, in order to enable the business system to automatically perform self-check compensation processing, the alarm message can be sent to the business system corresponding to the business process. In this way, the business system can automatically enter the self-check compensation processing based on the alarm message sent by the business process monitoring system when the alarm event is triggered. Among them, the self-check compensation processing can be specifically the business system notifying the relevant personnel of the abnormal situation based on the alarm information, and of course it can also be automatic compensation processing according to other pre-set supplementary processing strategies.
[0114] Furthermore, after sending the alarm information to the business system, the following steps may be performed:
[0115] Step 1: Receive and store the self-check compensation processing result fed back by the business system;
[0116] Step 2: When an alarm query is received, the self-check compensation processing result is output.
[0117] That is to say, after sending the alarm information to the business system, the self-check compensation processing result fed back by the business system can also be received and stored, and then when the alarm query is received, the self-check compensation processing result can be output. In this way, relevant personnel can query the results of the monitored exception processing, which is conducive to the management of abnormal situations.
[0118] Corresponding to the above method embodiment, the embodiment of the present application further provides a business process monitoring system. The business process monitoring system described below and the business process monitoring method described above can refer to each other.
[0119] See also Figure 3 As shown, the business process monitoring system includes:
[0120] Event engine and task scheduling engine;
[0121] The event engine is used to obtain event messages of state nodes in a business process; perform monitoring event matching verification on the event messages; and generate a monitoring task corresponding to the event messages when the event messages match the monitoring events;
[0122] Task scheduling engine, used to execute monitoring tasks.
[0123] That is, the event engine is an engine for processing event messages. The specific manner in which the event engine processes event messages can refer to the process described in the above method embodiment, and will not be described in detail here.
[0124] The task scheduling engine takes over the monitoring task sent by the event engine and executes it. For how to execute the monitoring task, reference can be made to the detailed process of task execution described in the above method embodiment, which will not be repeated here.
[0125] The business process monitoring system provided by the embodiment of the present application includes: an event engine and a task scheduling engine; wherein the event engine is used to obtain event messages of status nodes in the business process; perform monitoring event matching verification on the event messages; when the event messages match the monitoring events, generate a monitoring task corresponding to the event messages; and the task scheduling engine is used to execute the monitoring tasks.
[0126] It can be seen that in this device, the event message of the state node in the business process is obtained, and then the monitoring event matching check is performed on the event message, that is, it is detected whether a monitoring event has occurred currently. When the event message matches the monitoring event, it is determined that a monitoring event has occurred, and a monitoring task corresponding to the event message can be generated, and then the monitoring task can be executed. In other words, by treating each state in the business process as an independent state node, each state node of the business process can be effectively monitored, and a monitoring task can be automatically generated when a monitoring event occurs. By executing the monitoring task, abnormal situations in the business process can be discovered in a timely manner. That is, the device realizes the monitoring of the business process.
[0127] In a specific implementation of the present application, in order to reduce the burden on the business process monitoring system, data collection can be handed over to the business system, which can actively report status messages. Because the message formats of the business system and the business process monitoring system are different, in order to effectively connect, an event adapter can be set up in the business process monitoring system to receive status messages sent by the business system where the business process is located; and convert the status messages into event messages.
[0128] In a specific implementation of the present application, the event engine is specifically used to read the state retention time from the event message; if the state retention time is greater than the preset inspection time, it is determined that the event message matches the monitoring event.
[0129] In a specific implementation of the present application, the event engine is specifically used to read the historical status from the event message; if the historical status does not match the preset status change sequence, it is determined that the event message matches the monitoring event.
[0130] In a specific implementation of the present application, the event engine is specifically used to obtain monitoring parameters from monitoring rules; determine the monitoring object matching the monitoring event from the event message; and generate a monitoring task for monitoring the monitoring object according to the monitoring parameters.
[0131] In a specific implementation of the present application, the task scheduling engine is specifically used to obtain monitoring data of the monitored object according to the data collection frequency in the monitoring parameters;
[0132] For ease of management, a separate event alarm component can be set up in the business process monitoring system to send alarm information to the business system corresponding to the business process when the monitoring data triggers an alarm event, so that the business system can perform self-inspection and compensation processing.
[0133] In a specific implementation of the present application, it also includes:
[0134] The alarm feedback component receives and stores the self-check compensation processing results fed back by the business system; when an alarm query is received, the self-check compensation processing results are output.
[0135] Through the alarm feedback component, you can query the abnormal situation and the self-check compensation processing results of the business system corresponding to the abnormal situation.
[0136] To facilitate understanding, the following takes order transactions as an example to explain in detail the communication relationship between the various components in the business process monitoring system and their functional characteristics.
[0137] For details, please refer to Figure 4 , Figure 4 Schematic diagram of a specific business process monitoring system in the embodiment of the present application. The business process monitoring system has five parts, namely, an event adapter, an event engine, a task scheduling engine, an event alarm component and an event feedback component. In addition, Figure 4 MySQL refers to a relational database management system; CACHE is a high-speed cache memory; Redis refers to an open source log-type, Key-Value database written in ANSI C language, supporting the network, memory-based and persistent, and providing APIs in multiple languages; Hbase is an open source non-relational distributed database.
[0138] Among them, the event adapter is mainly responsible for converting external messages (i.e., MQ messages reported by the business system) into event messages that can be processed by the core event engine.
[0139] The core event engine mainly processes event messages and dispatches different events to corresponding system components (such as the task scheduling engine, event alarm component, and event feedback component) for processing. Considering that the core event engine handles relatively more things, its core can be specifically based on the event stream mechanism to process events, that is, all events are automatically registered to the engine when the system starts.
[0140] The task scheduling engine is mainly used to undertake the monitoring tasks assigned by the core event engine, and to schedule the managed monitoring tasks and regularly execute the monitoring tasks corresponding to the monitoring events (such as scheduled tasks or real-time tasks).
[0141] The event alarm component is mainly used to process event objects that require alarms, and is responsible for recording alarm events and sending messages to the corresponding business systems.
[0142] The event feedback component can be specifically an RPC interface, which is mainly used to receive the alarm data processing results fed back by the business system and land the result data for subsequent query.
[0143] The system can abstract existing businesses into visual business processes and configure monitoring and inspection rules based on process nodes. The business system reports order node data through the data reporting SDK or data reporting component. The business process monitoring system monitors and analyzes the reported data according to the rule configuration, issues alarms for business orders that meet the rules, and notifies the business system. The business system performs self-inspection and compensation processing, and notifies the business process monitoring system of the processing results. The business process monitoring system records feedback information. In particular, the data reporting component can also be an independent data collection program deployed separately on the server. The business system prints order track data by printing logs. The data collection program reads log files in the specified directory to collect data and reports it to the business process monitoring system through MQ messages. The specific implementation process includes:
[0144] The data collector / SDK in the business system can collect node data in the business system, and then report it to the event adapter in the business process monitoring system through MQ messages.
[0145] After receiving the MQ message reported by the business process, the event adapter obtains the event message through format conversion and passes it to the event engine.
[0146] The event engine uses Redis to check for duplicates and read and write event window data.
[0147] The event engine can use ES&HBase to read data from the alarm feedback interface.
[0148] The event engine can also derive order alerts to the event alert component.
[0149] The event alarm component can send MQ messages of alarm notifications to the business system.
[0150] After the business system processes the alarm notification, it can also call the alarm feedback JSF interface to send the alarm processing result to the alarm feedback interface of the business process monitoring system.
[0151] After the alarm feedback interface receives the alarm processing result, it can update the alarm data in ES&HBase.
[0152] The business process monitoring system is applicable to business process supervision of all process-type business systems. It completes the monitoring of order node dimensions through templated concrete business processes and a series of processing mechanisms such as data reporting, inspection, alarm, compensation, and feedback.
[0153] Corresponding to the above method embodiment, the embodiment of the present application further provides an electronic device. The electronic device described below and the business process monitoring method described above can refer to each other.
[0154] See also Figure 5 As shown, the electronic device includes:
[0155] A memory 332, for storing computer programs;
[0156] The processor 322 is used to implement the steps of the business process monitoring method of the above method embodiment when executing the computer program.
[0157] For details, please refer to Figure 6 , Figure 6 A specific structural diagram of an electronic device provided for this embodiment, the electronic device may have relatively large differences due to different configurations or performances, and may include one or more processors (central processing units, CPU) 322 (for example, one or more processors) and a memory 332, and the memory 332 stores one or more computer applications 342 or data 344. Among them, the memory 332 can be a temporary storage or a permanent storage. The program stored in the memory 332 may include one or more modules (not shown in the figure), and each module may include a series of instruction operations in the data processing device. Furthermore, the central processing unit 322 can be configured to communicate with the memory 332 to execute a series of instruction operations in the memory 332 on the electronic device 301.
[0158] The electronic device 301 may further include one or more power supplies 326 , one or more wired or wireless network interfaces 350 , one or more input and output interfaces 358 , and / or one or more operating systems 341 .
[0159] The steps in the business process monitoring method described above can be implemented by the structure of an electronic device.
[0160] Corresponding to the above method embodiment, the embodiment of the present application further provides a readable storage medium. The readable storage medium described below and the business process monitoring method described above can refer to each other.
[0161] A readable storage medium stores a computer program, which, when executed by a processor, implements the steps of the business process monitoring method of the above method embodiment.
[0162] The readable storage medium may specifically be a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, or other readable storage medium that can store program codes.
[0163] Those skilled in the art may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented with electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described in terms of function in the above description. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art may use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
Claims
1. A business process monitoring method, characterized in that: include: Get the event message of the status node in the business process; Performing monitoring event matching verification on the event message; In the case where the event message matches the monitoring event, generating a monitoring task corresponding to the event message; Execute the monitoring task; The step of generating a monitoring task corresponding to the event message includes: Get monitoring parameters from monitoring rules; Determining a monitoring object matching the monitoring event from the event message; The monitoring task for monitoring the monitoring object is generated according to the monitoring parameters.
2. The business process monitoring method according to claim 1, characterized in that: The obtaining of the event message of the state node in the business process includes: Receive a status message sent by the business system where the business process is located; The status message is converted into the event message.
3. The business process monitoring method according to claim 1, characterized in that: Performing monitoring event matching verification on the event message includes: Reading the state retention time from the event message; If the state retention time is greater than the preset inspection time, the event message matches the monitoring event.
4. The business process monitoring method according to claim 1, characterized in that: Performing monitoring event matching verification on the event message includes: Reading the history status from the event message; If the historical status does not match the preset status change sequence, it is determined that the event message matches the monitoring event.
5. The business process monitoring method according to claim 1, characterized in that: Executing the monitoring task includes: Acquiring monitoring data of the monitored object according to the data collection frequency in the monitoring parameters; When the monitoring data triggers an alarm event, an alarm message is sent to the business system corresponding to the business process so that the business system can perform self-checking and compensation processing.
6. The business process monitoring method according to claim 5, characterized in that: Also includes: Receiving and storing the self-check compensation processing result fed back by the business system; When an alarm query is received, the self-check compensation processing result is output.
7. A business process monitoring system, characterized in that: include: Event engine and task scheduling engine; The event engine is used to obtain event messages of state nodes in a business process; perform monitoring event matching verification on the event messages; and generate a monitoring task corresponding to the event messages when the event messages match the monitoring events; The task scheduling engine is used to execute the monitoring task; The event engine is specifically used to obtain monitoring parameters from monitoring rules; determine the monitoring object matching the monitoring event from the event message; and generate the monitoring task for monitoring the monitoring object according to the monitoring parameters.
8. An electronic device, characterized in that: include: Memory for storing computer programs; A processor, configured to implement the steps of the business process monitoring method as claimed in any one of claims 1 to 6 when executing the computer program.
9. A readable storage medium, characterized in that: The readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the business process monitoring method according to any one of claims 1 to 6 are implemented.
