Health Index of Services

By collecting and analyzing accident information of services in the cloud computing environment and generating health indexes, the problem of multi-service health monitoring in cloud computing is solved, and the comparability of cross-service health status and management efficiency are improved.

CN116057902BActive Publication Date: 2025-01-17MICROSOFT TECHNOLOGY LICENSING LLC
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202080102107.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-06-30
Publication Date
2025-01-17
Estimated Expiration
2040-06-30

AI Technical Summary

Technical Problem

In a cloud computing environment, monitoring and managing the health status of multiple services is a challenge. The existing technology is difficult to expand to different types of services, and the lack of a general health monitoring method makes it difficult to compare and manage the health status of cross-services.

Method used

By collecting sets of accident information reported by each service during operation, using a unified health classification strategy, a health index for each service is generated, thereby providing a common, comparable health status indication, using machine learning models such as deep learning networks Analyze accident information and generate a health index.

Benefits of technology

It realizes unified monitoring and management of the health status of multiple services, which can more easily diagnose health status and predict potential problems, and improves the reliability and management efficiency of services in cloud computing environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116057902B_ABST
    Figure CN116057902B_ABST
Patent Text Reader

Abstract

According to an implementation of the subject matter described herein, a solution for providing a health index of a service is provided. In the solution, multiple accident information sets associated with multiple services are obtained. Multiple services are provisioned in a computing environment. The accident information set indicates at least one accident reported during the operation of the service. Corresponding health indexes are determined for multiple services based on corresponding accident information sets in the multiple accident information sets and a health classification strategy. The corresponding health indexes indicate corresponding health states of the multiple services and are determined from the same health index range. By uniformly using the accident information, the determined health index can indicate a common and consistent health state for different services.
Need to check novelty before this filing date? Find Prior Art

Description

Background Technology

[0001] Cloud computing is network-based computing, typically internet-based, where shared resources, software, and information are provided on demand. Service providers can offer numerous service functionalities for customer access within a cloud computing environment. Customers always want to avoid cloud service degradation or outages. Therefore, the ability to monitor the health of services offered in the cloud is extremely helpful. Summary of the Invention

[0002] Based on the implementation of the subject matter described herein, a solution for providing a health index for services is provided. In this solution, multiple incident information sets associated with multiple services are obtained. These multiple services are provided in a computing environment. The incident information sets associated with a service indicate at least one incident reported during the operation of the service. A corresponding health index for the multiple services is determined based on the corresponding incident information sets and a health classification strategy. The corresponding health index indicates the corresponding health status of the multiple services and is determined from the same health index range.

[0003] This invention will present a set of concepts in a simplified form, which will be further described in the detailed embodiments below. This invention is not intended to identify key or essential features of the subject matter described herein, nor is it intended to limit the scope of the subject matter described herein. Attached Figure Description

[0004] Figure 1 The computational environment in which the topics described in this paper can be implemented is shown;

[0005] Figure 2 A block diagram of an example architecture for providing health indices for services, based on some implementations of the topics described in this article, is shown.

[0006] Figure 3 Example incident pools for service collection are shown, based on some implementations of the topics described in this article;

[0007] Figure 4 A graph is shown indicating the time-series data of incident counts for a service, based on the implementation of the subject described herein.

[0008] Figure 5 An example user interface showing a health index is shown, based on an implementation of the topic described in this article;

[0009] Figure 6A and Figure 6B Another example user interface displaying health indices is shown, based on some implementations of the topics described in this article;

[0010] Figure 7A flowchart illustrating the process of implementing the subject matter described herein is shown; and

[0011] Figure 8 A block diagram of a computer environment in which various implementations of the topics described herein can be carried out is shown.

[0012] Throughout the accompanying drawings, the same or similar reference numerals denote the same or similar elements. Detailed Implementation

[0013] The principles of the subject matter described herein will now be described with reference to some example implementations. It should be understood that these implementations are described for illustrative purposes only and to help those skilled in the art to better understand and thus implement the subject matter described herein, without implying any limitation on the scope of the subject matter disclosed herein.

[0014] As used herein, the term “comprising” and its variations shall be understood as open terms meaning “including but not limited to”. The term “based on” shall be understood as “at least partially based on”. The terms “implementation” and “one implementation” shall be understood as “at least one implementation”. The term “another implementation” shall be understood as “at least one other implementation”. The terms “first,” “second,” etc., may refer to different or the same objects. Other explicit or implicit definitions may be included below.

[0015] As used in this article, a "machine learning model" is an AI model, which can also be called a "learning model," "learning network," "network model," or simply "model." These terms are used interchangeably below. A deep learning model is an example of a machine learning model, examples of which include "neural networks." The parameter set of a machine learning model is determined through a training phase based on training data. The trained machine learning model uses the trained parameter set to map received inputs to corresponding outputs. Therefore, the training process of a machine learning model can be thought of as learning the mapping or association between inputs and outputs from training data.

[0016] Figure 1 A computing environment 100 in which the subjects described herein can be implemented is shown. The computing environment 100 is shown as a cloud computing environment. The infrastructure 110 in the computing environment 100 includes various hardware or software components to provide a shared pool of physical or virtual resources. The hardware or software components of the infrastructure 110 may be aggregated or distributed at locations in remote data centers.

[0017] Resources include, for example, networks, network bandwidth, servers, processing equipment, storage devices, virtual machines, software, and applications. Infrastructure 110 resources can be rapidly provisioned and released with minimal management effort or interaction with the provider.

[0018] The computing environment 100 can be built according to a cloud computing model, which can consist of various features such as on-demand self-service, broad network access, resource pooling, rapid elasticity, and measurement services. The cloud computing model can also take the form of various service models, such as Software as a Service (“SaaS”), Platform as a Service (“PaaS”), and Infrastructure as a Service (“IaaS”). The cloud computing model can also be deployed using different deployment models, such as private cloud, community cloud, public cloud, and hybrid cloud. In the context of this paper, the “cloud computing environment” refers to an environment that utilizes cloud computing.

[0019] Service providers can supply any number of services to their clients 130 through infrastructure 110. The resources of infrastructure 110 are used to support the deployment, operation, and user access of service 122. As shown in the diagram, services 122-1, 122-2, 122-3, ..., 122-N (where N is an integer greater than or equal to 1) are supplied in computing environment 100. For ease of discussion, services 122-1, 122-2, 122-3, ..., 122-N are collectively referred to as service 122 or individually.

[0020] As used herein, "service" can be a general term that can refer to any service that can be performed in a computing environment or otherwise provided by the computing environment to support a given task or function. For example, service 122 can be any type of web service, identity management service, firewall or other security service, messaging service, data storage or backup service, file maintenance service, or any other service available to end users of the computing environment. It should be understood that other services associated with or otherwise supported by the computing environment may be envisioned.

[0021] During operation, some software or hardware components of the infrastructure may malfunction or fail, leading to a degradation or interruption of service provision. Service administrator 140 is responsible for maintaining service 122, diagnosing faults or errors, and taking necessary actions to repair or mitigate them.

[0022] Monitoring the health of hundreds or even thousands of services can be provisioned in a computing environment, making it a challenging task. With the explosive growth of cloud computing, the provisioned services are becoming increasingly complex. This also presents greater challenges for service maintenance, as it is difficult to provide universal health monitoring capabilities for all services.

[0023] Currently, there are methods that focus on monitoring individual services such as web services or storage services. These methods are difficult to extend to other services because they rely on deep domain knowledge and specific service characteristics. Furthermore, by developing specific health monitoring methods for individual services, there may be gaps between the definitions of "healthy" or "unhealthy" across different services. Therefore, it is difficult to compare the health status of different services.

[0024] Based on the implementation of the subject matter described in this paper, a solution for a general health index for providing services is proposed. In this solution, for each service, an incident information set is obtained to determine the health index for that service. The incident information set indicates one or more incidents reported during service operation. When incidents are reported for virtually all services provided in the computing environment, for each of the multiple services, a corresponding incident information set can be obtained to generate a health index for that service. The same health classification strategy is employed to determine the health index of the service from the same health index range based on the incident information set.

[0025] By using incident information uniformly, the established health indices can indicate a common and consistent health status across different services. The definitions of health or unhealthiness across different services are comparable, meaning that multi-service health tracking is easier to perform during service management. For example, by analyzing trends in the health status of multiple services, it is easier to diagnose which services are healthy or unhealthy under the same criteria, and / or predict potential problems.

[0026] Example implementations of the subjects described herein will be discussed in detail below with reference to other accompanying figures. It should be reiterated that although this disclosure includes a detailed description of cloud computing, the implementations of the subjects described herein are not limited to cloud computing environments. Rather, the implementations of the subjects described herein are intended to be implemented using any type of network computing environment now known or developed in the future.

[0027] Figure 2 An example architecture 200 is shown to provide health indices based on some implementations of the topics described herein. In architecture 200, a health monitoring system 220 is configured to generate health indices for multiple services 122 to be monitored in computing environment 100 (the infrastructure is omitted for brevity). The functionality of the health monitoring system 220 described herein can be implemented as one or more services within computing environment 100, or it can be implemented by one or more computing devices outside computing environment 100.

[0028] In the implementation of the subject matter described herein, health monitoring system 220 obtains incident information associated with multiple services 122 to generate health indices for these services. For each service 122, health monitoring system 220 obtains an associated incident information set 212 for determining the health index of that service. Incident information set 212 indicates at least one incident reported during the operation of that service 122.

[0029] The corresponding incidents reported by this service can be monitored and collected by the incident management system 210. The functions of the incident management system 210 described herein can also be implemented as one or more services within the computing environment 100, or can be implemented by one or more computing devices outside the computing environment 100.

[0030] As used herein, an incident is an event that is not part of the normal operation of a service and may affect or disrupt the operation of the service and, in some cases, may lead to disaster. An incident may refer to any event indicating an interruption or degradation of the service, or an event that has not yet affected service customers. Depending on the application's terminology and computing environment, such events may be referred to using other terms than "incident." Service-related incidents may be automatically reported by the service to an incident management system 210. In some implementations, incidents may be triggered by customer complaints of service interruptions or degradation.

[0031] In addition to incidents, there can be various other types of events associated with services defined as reporting operational conditions within the computing environment from different perspectives. These other types of events may include one or more of the following:

[0032] - Error: Indicates an error that deviates from the actual and expected values. This is usually caused by human error.

[0033] - Error: An error indicates an incorrect step, process, or data definition in a software program, causing the program to operate in an unplanned or unexpected manner. An error may result in an incorrect outcome.

[0034] - Fault: A fault indicates that a component or system is unable to perform its required functions within the specified performance requirements. For example, a fault can be reported for a set of physical or virtual resources / components in a computing environment.

[0035] - Interruption: The cessation or interruption of service continuity.

[0036] - Degradation: The Service Level Agreement (SLA) of the service is reduced, but the service will not be completely interrupted.

[0037] Outage: Outage indicates a period of time during which the operation of a system, infrastructure, (multiple) supported services, or the entire business operation is completely disrupted or interrupted, which may result in the service provider being unable to provide (multiple) services for a period of time. Outage may affect a large number of customers.

[0038] Of all the incidents that can be reported, the range of incidents can be between service degradation and complete outage. The inventors have found that incidents are preferred and useful for measuring the general health status of the supplied services. Some of the reasons are briefly described below.

[0039] On the one hand, incidents can indicate a higher-level aggregation of unhealthy signals for a service compared to minor malfunctions, errors, or faults. Noise and uncertainty regarding unhealthy service signals can be filtered out by incidents. While outages can reflect a higher-level aggregation of unhealthy service signals, when a service outage is reported, a larger-scale disaster has occurred, which may already require immediate action. Although outage reports are rare, this does not necessarily mean that the service is in perfect health. In view of this, using incidents to provide health indicators is more practical and advantageous.

[0040] On the other hand, triggers used to report service incidents are typically defined by the service provider or developers. For example, an incident might be designed to trigger when performance degradation is detected to fall below a degradation threshold, and another incident might be designed to trigger when a threshold number of faulty storage devices is reached. To implement incident reporting, the service provider or developers can configure the measurement methods used to calculate performance degradation, degradation thresholds, and the number of thresholds. Furthermore, the designed incidents may implicitly indicate that performance degradation and failure of storage devices could lead to service outages. Therefore, by leveraging incidents, domain knowledge and expertise can be combined to measure the health of the service.

[0041] While incidents are a good indicator of service health, at cloud scale, services may trigger a large number of incidents over a period of time. Incidents may have different severity levels and / or different states, as will be discussed below. It is inappropriate to simply use one incident to indicate the health status of the entire service. Based on the implementation of the subject matter described herein, in architecture 200, health monitoring system 220 measures the health status of a service based on an incident information set 212 associated with service 122, and maps the incident information set 212 to a health index 222 by following a health classification strategy. A health index 222 is selected for each service 122 from a predetermined range of health indices. The same method is applied to determine the health index for each of the multiple services 122.

[0042] A health index is a quantitative or qualitative indicator of service health, designed to summarize the complexities reflected in incidents(s) using a single numerical value or other indicators. Health indices may also be referred to as health scores, health metrics, or health levels. In some implementations, the health index range may be defined as a numerical range or include multiple values ​​to indicate different levels of service health, from healthy to unhealthy. A health index can be represented by values ​​within a numerical range or selected from multiple values. For example, a health index can be defined as a value from 0 to 10, where a higher health index indicates a healthier service (and vice versa).

[0043] In other implementations, the health index 222 can be represented by non-numeric qualitative information. For example, a health index range may include multiple qualitative indicators indicating different health levels. In the example implementation, a health index range may include two indicators to simply indicate the healthy or unhealthy state of the service. It should be understood that health index ranges and individual health indices can be represented in other ways, and the scope of the subject matter described herein is not limited to this.

[0044] In some implementations, incidents can be reported at any point in time, and the health monitoring system 220 can obtain an incident information set 212 indicating incidents for each service 122 during a time period, such as minutes or hours. Both the incident and the corresponding time when the incident was reported can be included in the incident information set 212. The health monitoring system 220 can use the incident information set 212 to determine a health index 222 to indicate the health status of the service 122 during that time period.

[0045] An incident can be set to one of several predefined states. In some implementations, an incident can have one of three states: active, mitigated, or resolved. Typically, when an incident is created, its state is marked as active. If the underlying problem associated with the incident is mitigated, the state is marked as mitigated. If the problem is completely resolved, the incident's state can be marked as resolved. Figure 3 An example pool 300 is shown that collects incidents for service 122 during a time period. Incidents include mitigation incidents 302, active incidents 304, and resolved incidents 306.

[0046] In some implementations, the incident information set 212 used to measure the health index 222 of the service may include one or more incidents that are active. Active incidents may reflect unhealthy aspects of the service 122. Figure 3In the example, a subset 310 of active incidents 304 is selected for use from all incidents reported for service 122. In some other implementations, since mitigation incidents still indicate existing problems that have been mitigated but not fully resolved, the incident information set 212 used to measure the health index 222 may also include one or more incidents in a mitigation state.

[0047] In some implementations, the health classification strategy used by the health monitoring system 220 defines the method for classifying the health status of service 122 into multiple health statuses indicated by a range of health indices. Various methods can be employed to perform health classification based on incident information sets.

[0048] In some implementations, the health classification strategy may need to extract one or more types of features from the corresponding incident information set 212 associated with service 122. In some implementations, based on the health classification strategy, the health monitoring system 220 can determine the number of (active) incidents within a given time period as a feature of the incident information set 212. More specifically, the health monitoring system 220 can divide the time period for collecting the incident information set 212 into multiple time intervals and determine the count of (active) incidents reported during each time interval. The counts of (active) incidents can be compiled into time-series data to indicate how the count changes over time.

[0049] In some implementations, when an incident is reported, a severity level can be configured to indicate how severe the incident is. As an example, five severity levels from 0 to 4 can be defined, where severity level "0" (represented as "sev0") indicates a critical level, severity level "1" (represented as "sev1") indicates a high level, severity level "2" (represented as "sev2") indicates a medium level, severity level "3" (represented as "sev3") indicates a low level, and severity level "4" (represented as "sev4") indicates a minor severity level. It is understood that the severity of an incident can be divided into more or fewer than five levels. In some implementations, the incident information set 212 associated with service 122 can also indicate the corresponding severity level of the incident.

[0050] Since different severity levels can indicate different levels of service interruption or degradation, in some implementations, the health monitoring system 220 can extract corresponding features for each severity level from the incident information set 212. More specifically, the health monitoring system 220 can classify incidents indicated in the incident information set 212 according to their severity levels. The health monitoring system 220 can divide the time period for collecting the incident information set 212 into multiple time intervals and determine the count of incidents at each severity level for each time interval. For each severity level of service 122, the corresponding incident counts can be compiled into time-series data to indicate how the count changes over time.

[0051] Figure 4 A graph showing time-series data indicating incident counts for Service 122 is presented. Figure 4 In the diagram, graph 410 indicates the change in the accident count for severity level "0" over time. Similarly, graph 420 indicates the change in the accident count for severity level "1", graph 430 indicates the change in the accident count for severity level "2", graph 440 indicates the change in the accident count for severity level "3", and graph 450 indicates the change in the accident count for severity level "4". It should be understood that providing... Figure 4 The examples provided are for illustrative purposes only and do not imply any limitations.

[0052] Using the extracted features, the health classification strategy employed by the health monitoring system 220 can further refine the algorithm based on the extracted features to determine a health index 222 for service 122. In some implementations, the health monitoring system 220 can apply anomaly detection algorithms to detect anomalies in the extracted features, such as time-series data regarding incident counts. For example, as the counts of incidents of different severity levels change over time, the time-series data may exhibit some peaks, such as... Figure 4 The curves 410 to 450 are shown in the figures. These peaks in the time series data can be considered as anomalous or unhealthy portions of the time series data. The overall health status of Service 122 can be determined by measuring the anomalous scores of the time series data derived from Incident Information Set 212. If time series data for different severity levels are obtained, a health index 222 can be determined based on one or more anomalous scores.

[0053] Anomaly detection algorithms can be based on probabilistic models, fitted models, deep learning networks, etc. In some implementations, incident classification strategies may require the use of k-sigma probabilistic models to calculate the corresponding health index 222 for service 122. Examples of k-sigma probabilistic models include 3-sigma probabilistic models. For each feature indicating the incident count at a corresponding severity level, an individual health score can be calculated based on that feature. According to the 3-sigma probabilistic model, the cumulative distribution function (CDF) can be used, and the individual health score can be determined based on the distance between the incident count and the sample mean of that feature divided by the standard deviation.

[0054] In one example, the calculation can be represented as follows:

[0055] S sev =cdf((count sev -mean) / std) formula (1)

[0056] Among them, S sev The individual health score represents the count of incidents indicating a severity level of "sev". `cdf()` represents the CDF (Conversion Factor over Time) that can be used to approximate a standard normal distribution of the health score. sev This represents the count of accidents at this severity level, where mean and std represent the mean and standard deviation of a standard normal distribution.

[0057] In Equation (1), mean and std are the parameter sets that need to be predetermined in the 3-sigma probability model, which serve as the baseline for measuring the health score. In some implementations, since the distribution of incident counts at severity levels may differ for different services 122, the two parameters mean and std can be specifically determined for each service 122. In some implementations, a historical incident information set associated with service 122 can be obtained to determine the parameter set specific to that service 122. The historical incident information set may indicate one or more historical incidents reported during the operation of service 122 within a time period. For example, historical incident information sets for the past three days, the past ten days, the past thirty days, etc., can be collected. The health monitoring system 220 can analyze the historical incident information set in a similar manner to the incident information set 212 to determine the incident counts at the corresponding severity levels over time. For each severity level of service 122, the mean and standard deviation of the incident counts over different time intervals can be calculated as the two parameters mean and std.

[0058] In some implementations, the health monitoring system 220 can combine individual health scores calculated for corresponding severity levels to generate a health index 222 for service 122.

[0059] In some implementations, to differentiate the impact of accidents at different severity levels, corresponding weights can be assigned for each severity level. These weights can be directly applied to the accidents indicated in the accident information set 212. In another implementation, when calculating the health index 222 from a combination of individual health scores, these weights can be applied to the individual health scores calculated for the corresponding severity levels.

[0060] For example, the health index 222 for service 122 can be determined based on an individual's health score and weights for severity levels, as shown below:

[0061]

[0062] Where H represents the combined score of the health index 222 used to indicate service 122, and S sev This represents the individual health score corresponding to the severity level "sev", where "sev" ranges from 0 to the maximum severity level (4 in the example above), and w sev This represents the weight assigned to the severity level "sev". The weight can be set to any value from 0 to 1. In some implementations, if the health index is selected from a range of health indices that include multiple qualitative indicators, the combined score H can be mapped to one of the qualitative indicators accordingly.

[0063] In some implementations, in addition to or as an alternative to the 3-sigma probabilistic model, other models can be used to configure the health classification strategy. Probabilistic models, fitted models, and / or deep learning models can be employed to compute the health index 222 for the corresponding service 122. Some examples of other possible models may include linear fitted / regression models, autoregressive aggregated moving average (ARIMA) models, autoregressive moving average (ARMA) models, predictive models such as Prophet, artificial recurrent neural networks (RNNs) such as long short-term memory networks (LSTM), etc. In some implementations, the health classification strategy may require the use of a hybrid model to determine the corresponding health index for a service. A hybrid model can be assembled from multiple models. Each of the multiple models generates a health score for service 122, and the health index 222 for service 122 can be determined by combining the output health scores from the multiple models (e.g., by calculating a weighted sum of the output health scores).

[0064] In some implementations, if a probabilistic or fitted model is used according to the requirements of the health classification strategy, a set of parameters for determining the health index 222 is derived from the set of historical incident information associated with the corresponding service 122. Each parameter set can be service-specific within service 122. For example, if a 3-sigma probabilistic model is used, the mean and std parameters for each service 122 can be specifically determined based on the set of historical incident information collected for that service 122. For deep learning models such as RNNs or LSTMs, a general set of parameters for that model can be determined from the set of historical incident information (including multiple sets of historical incident information) associated with the corresponding service 122. The general set of parameters can be learned from the historical incident information through a training process to learn the mapping or association between the set of incident information associated with service 122 and the health index from a predetermined range of health indices.

[0065] In some implementations, a specific or general parameter set can be updated after a period of time using newly collected historical incident information. For example, the parameters mean and std of service 122 used in a 3-sigma probability model can be updated with a new set of historical incident information.

[0066] In the above implementation, a corresponding health index 222 for service 122 in computing environment 100 is determined. The health index 222 is determined per service. In some implementations, since the health index 222 is determined in a uniform manner, a health threshold can be set to determine whether service 122 is healthy based on the corresponding health index 222. For example, it might be assumed that a higher health index 122 indicates that service 122 is healthier. If the health index 122 of a service 122 is lower than a preset health threshold, then the service 122 is unhealthy; otherwise, the service 122 is healthy.

[0067] In some implementations, since one or more services in service 122 can access or depend on resources located in different regions, the health monitoring system 210 can determine a corresponding health index 222 for each service 122 for different regions. These health indices 222 for each region can be used to indicate the health status of service 122 within the corresponding region. In some implementations, an incident information set 212 associated with service 122 can indicate the corresponding region for which incidents have been reported for that service 122. The health monitoring system 210 can determine the health index 222 for that region based on the incidents reported from that region. That is, the incident information set 212 can be divided into multiple subsets of incident information for a region. For each subset of incident information, the same or similar methods described above can be applied to determine the health index of service 122 in the corresponding region.

[0068] Depending on the different implementations of the subject matter described herein, the health monitoring system 210 can determine multi-service health indices 222 and multi-regional health indices 222. A general health index 222 for multiple services and potentially multiple regions can be used to facilitate problem detection, diagnosis, improved failure impact analysis, and other machine learning models for intelligent downtime management. In some implementations, the health index 222 can be presented to a user in a user interface, such as a service administrator 140 of computing environment 100. The health index 222 can be presented along with indications for the corresponding service 122. If the health index 222 is determined based on a region, it can be arranged in the user interface to indicate the associated service 122 and region. Appropriate visualizations can be applied in the user interface to indicate the health index.

[0069] Figure 5 An example user interface 500 is shown, in which visual indicators 502 are presented for the health indices of services 122-1 to 122-4. Visual indicators 502 can be designed to represent different health indices. For each service, multiple health indices for regions A, B, and C are also presented. This multi-service and multi-region presentation of health indices helps users conveniently monitor and compare the health status of service 122 in different regions. In this particular example, user interface 500 also allows the user to select which health indices to present. For example, with selectable options 510 and 512, the user can filter regions and services of interest. With selectable options 520 and 522, the user can determine whether to present only the health indices of unhealthy services, select to present only the indices of healthy services, or present both.

[0070] In some implementations, the changing trend of the health index 222 of a corresponding service 122 over time can further facilitate service diagnosis or outage prediction. Therefore, for a given service 122, multiple health indices 222 can be determined from multiple incident information sets reported over multiple time periods. In implementations, corresponding health indices 222 for multiple regions can be determined for that service 122. The health index 222 for each service can be presented to indicate its changes over time. Figure 6A and 6B Another example user interface 600 and 601, showing a health index, is shown in some implementations of the topics described in this article.

[0071] exist Figure 6AIn the user interface 600, graph 611 presents the health index (denoted as "H") of service 122-1 in region A over time, and graph 612 presents the health index of service 122-2 in region B over time. Similarly, graphs 621, 622, 631, and 632 indicate the changing health indices of services 122-1 and 122-2 in regions B and C, respectively. By monitoring changes in the service health indices, users can observe rapid increases in the health index of service 122-1 in both regions A and B from graphs 611 and 621. Users can then determine if there may be a cross-regional outage of service 122-1 (assuming that in region A, region B, and region C, respectively). Figure 6A and 6B In the examples, a higher health index indicates a less healthy service.

[0072] exist Figure 6A In the user interface 602, graphs 641, 642, 651, 652, 661, and 662 indicate the health index of services 122-1 and 122-2 in regions A, B, and C over time. By monitoring changes in the service health index, users can observe a rapid increase in the health index of services 122-1 and 122-2 in region C from graphs 661 and 662. Users can then determine if there may be cross-service outages in that region.

[0073] It should be understood that Figure 5 , Figure 6A and Figure 6B The examples presented are for illustrative purposes only. The health index can be presented in any other way. More detailed information can be presented along with the health index to allow viewers to obtain the information they need.

[0074] Figure 7 A flowchart of process 700, representing some implementations of the subject matter described herein, is shown. Process 700 can be implemented by health monitoring system 220.

[0075] At box 710, health monitoring system 220 obtains multiple incident information sets associated with multiple services provided in the computing environment. The incident information sets associated with a service indicate at least one incident reported during the operation of the service. At box 720, health monitoring system 220 determines corresponding health indices for the multiple services based on the respective incident information sets and a health classification strategy. The corresponding health indices indicate the corresponding health status of the multiple services and are determined from the same health index range.

[0076] In some implementations, an incident information set associated with a given service among multiple services indicates multiple regions where incidents were reported during the operation of the given service. In some implementations, determining the corresponding indices includes: determining multiple health indices for the given service based on the associated incident information set, which indices indicate the corresponding health status of the given service in multiple regions.

[0077] In some implementations, the incident information set also indicates at least one severity level for at least one incident, which is selected from a plurality of severity levels. In some implementations, determining the corresponding health index includes: determining a corresponding health index for multiple services by applying at least one weight for at least one incident at at least one severity level, which is selected from a plurality of weights assigned to multiple severity levels.

[0078] In some implementations, the incident information indicates at least one incident that is active.

[0079] In some implementations, the health classification strategy includes multiple corresponding parameter sets for multiple services. In some implementations, the process also includes: for a given service among the multiple services, obtaining a set of historical incident information associated with the given service, the set of historical incident information indicating at least one historical incident reported during the operation of the given service; and based on the set of historical incident information, determining a given set of parameters for the given service from the multiple parameter sets.

[0080] In some implementations, the health classification strategy includes a common set of parameters. In some implementations, the process also includes obtaining multiple sets of historical incident information associated with multiple services, a service-associated set of historical incident information indicating at least one historical incident reported during the operation of the service; and determining a common set of parameters based on the multiple sets of historical incident information.

[0081] In some implementations, the process also includes presenting the corresponding health index by combining relevant instructions from multiple services in the user interface.

[0082] Figure 8 A block diagram of a computing device 800 in which various implementations of the subjects described herein can be carried out is shown. It should be understood that, as Figure 8 The computing device 800 shown is provided as an example only and does not imply any limitation on the functionality and scope of implementation of the subject matter described herein. The health monitoring system 220 may be implemented entirely or partially in the computing device 800.

[0083] like Figure 8As shown, the computing device 800 includes a computing device in the form of a general-purpose computing device. Components of the computing device 800 may include, but are not limited to, one or more processors or processing units 810, memory 820, storage devices 830, one or more communication units 840, one or more input devices 850, and one or more output devices 860.

[0084] In some implementations, computing device 800 can be implemented as various user terminals or server terminals. Server terminals can be any server, large-scale computing device, and any other device provided by various service providers. User terminals can be, for example, any type of mobile terminal, fixed terminal, or portable terminal, including mobile phones, stations, units, devices, multimedia computers, multimedia tablet computers, internet nodes, communicators, desktop computers, laptop computers, notebook computers, netbook computers, tablet computers, personal communication system (PCS) devices, personal navigation devices, personal digital assistants (PDAs), audio / video players, digital cameras / camcorders, positioning devices, radio receivers, e-book devices, gaming devices, or any combination thereof, including accessories and peripherals of these devices, or any combination thereof. It is also conceivable that computing device 800 can support any type of interface to the user (e.g., "wearable" circuitry, etc.).

[0085] Processing unit 810 can be a physical or virtual processor and can implement various processes based on programs stored in memory 820. In a multiprocessor system, multiple processing units execute computer-executable instructions in parallel to improve the parallel processing capability of computing device 800. Processing unit 810 may also be referred to as a central processing unit (CPU), microprocessor, controller, or microcontroller.

[0086] Computing device 800 typically includes various computer storage media. The computer storage media can be any available media accessible to computing device 800, including but not limited to volatile and non-volatile media, or removable and non-removable media. Memory 820 can be volatile memory (e.g., registers, cache, random access memory (RAM)), non-volatile memory (e.g., read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory), or any combination thereof. Storage device 830 can be any removable or non-removable media and may include machine-readable media, such as memory, flash drives, disks, or any other media that can be used to store information and / or data and is accessible by computing device 800.

[0087] The computing device 800 may also include additional removable / non-removable, volatile / non-volatile storage media. Although not explicitly stated... Figure 8As shown, however, disk drives for reading from or writing to removable and non-volatile optical discs, and optical disc drives for reading from and writing to removable and non-volatile optical discs, may be provided. In this case, each drive may be connected to a bus (not shown) via one or more data media interfaces.

[0088] The communication unit 840 communicates with another computing device via a communication medium. Furthermore, the functionality of the components in the computing device 800 can be implemented by a single computing cluster or multiple computing machines capable of communicating with each other via communication connections. Therefore, the computing device 800 can operate in a networked environment using logical connections to one or more other servers, network personal computers (PCs), or other general network nodes.

[0089] Input device 850 may include one or more devices from a variety of input devices, such as a mouse, keyboard, trackball, voice input device, etc. Output device 860 may include one or more devices from a variety of output devices, such as a monitor, speaker, printer, etc. Through communication unit 840, if needed, computing device 800 may also communicate with one or more external devices (not shown), such as storage devices and display devices, one or more devices that enable a user to interact with computing device 800, or any device (such as a network card, modem, etc.) that enables computing device 800 to communicate with one or more other computing devices. Such communication may be performed through an input / output (I / O) interface (not shown).

[0090] The computing device 800 can be used to implement health monitoring according to various implementations of the subject matter described herein, in order to provide a health index for services. The memory 820 may include one or more modules having one or more program instructions. These modules can be accessed and executed by the processing unit 810 to perform the functions of the various implementations described herein. For example, the memory 820 may include a health monitoring module 822 to implement the aforementioned health monitoring.

[0091] Below are some example implementations of the topics described in this article.

[0092] In a first aspect, the subject matter described herein provides a computer-implemented method. The method includes: obtaining multiple incident information sets associated with multiple services provided in a computing environment, the incident information sets associated with the services indicating at least one incident reported during the operation of the services; and determining corresponding health indices for the multiple services based on corresponding incident information sets in the multiple incident information sets and a health classification strategy, the corresponding health indices indicating corresponding health states of the multiple services, and determined from the same health index range.

[0093] In some implementations, an incident information set associated with a given service among multiple services indicates multiple regions where incidents were reported during the operation of the given service. In some implementations, determining the corresponding indices includes: determining multiple health indices for the given service based on the associated incident information set, the multiple health indices indicating the corresponding health status of the given service in multiple regions.

[0094] In some implementations, the incident information set also indicates at least one severity level for at least one incident, the at least one severity level being selected from a plurality of severity levels. In some implementations, determining the corresponding health index includes: determining the corresponding health index for a plurality of services by applying at least one weight to at least one incident at at least one severity level, the at least one weight being selected from a plurality of weights assigned to the plurality of severity levels.

[0095] In some implementations, incident information indicates that at least one incident is active.

[0096] In some implementations, the health classification strategy includes multiple corresponding parameter sets for multiple services. In some implementations, the method further includes: for a given service among the multiple services, obtaining a set of historical incident information associated with the given service, the set of historical incident information indicating at least one historical incident reported during the operation of the given service; and based on the set of historical incident information, determining a given set of parameters for the multiple parameter sets for the given service.

[0097] In some implementations, the health classification strategy includes a common set of parameters. In some implementations, the method further includes: obtaining multiple sets of historical incident information associated with multiple services, the historical incident information sets associated with services indicating at least one historical incident reported during the operation of the services; and determining a common set of parameters based on the multiple sets of historical incident information.

[0098] In some implementations, the method also includes presenting the corresponding health index by combining relevant indications from multiple services in the user interface.

[0099] In a second aspect, the subject matter described herein provides an electronic device. The device includes: a processing unit; and a memory coupled to the processing unit and storing instructions thereon, which, when executed by the processing unit, cause the device to perform actions including: obtaining multiple incident information sets associated with multiple services provided in a computing environment, the incident information sets associated with the services indicating at least one incident reported during operation of the services; and determining corresponding health indices for the multiple services based on corresponding incident information sets in the multiple incident information sets and a health classification strategy, the corresponding health indices indicating corresponding health states of the multiple services and determined from the same health index range.

[0100] In some implementations, an incident information set associated with a given service among multiple services indicates multiple regions where incidents were reported during the operation of the given service. In some implementations, determining the corresponding indices includes: determining multiple health indices for the given service based on the associated incident information set, the multiple health indices indicating the corresponding health status of the given service in multiple regions.

[0101] In some implementations, the incident information set also indicates at least one severity level for at least one incident, the at least one severity level being selected from a plurality of severity levels. In some implementations, determining the corresponding health index includes: determining the corresponding health index for multiple services by applying at least one weight for at least one incident at at least one severity level, the at least one weight being selected from a plurality of weights assigned to the plurality of severity levels.

[0102] In some implementations, incident information indicates that at least one incident is active.

[0103] In some implementations, the health classification strategy includes multiple corresponding parameter sets for multiple services. In some implementations, the action also includes: for a given service among the multiple services, obtaining a set of historical incident information associated with the given service, the set of historical incident information indicating at least one historical incident reported during the operation of the given service; and based on the set of historical incident information, determining a given set of parameters for the multiple parameter sets for the given service.

[0104] In some implementations, the health classification strategy includes a common set of parameters. In some implementations, the action also includes: obtaining multiple sets of historical incident information associated with multiple services, the historical incident information sets associated with services indicating at least one historical incident reported during the operation of the services; and determining the common set of parameters based on the multiple sets of historical incident information.

[0105] In some implementations, this action also includes combining relevant instructions from multiple services in the user interface to present the corresponding health index.

[0106] In a third aspect, the subject matter described herein provides a computer program product tangibly stored on a non-transient computer storage medium and comprising machine-executable instructions that, when executed by a device, cause the device to perform actions including: obtaining multiple incident information sets associated with multiple services provided in a computing environment, the incident information sets associated with the services indicating at least one incident reported during operation of the services; and determining corresponding health indices for the multiple services based on corresponding incident information sets in the multiple incident information sets and a health classification strategy, the corresponding health indices indicating corresponding health states of the multiple services and determined from the same health index range.

[0107] In some implementations, an incident information set associated with a given service among multiple services indicates multiple regions where incidents were reported during the operation of the given service. In some implementations, determining the corresponding indices includes: determining multiple health indices for the given service based on the associated incident information set, the multiple health indices indicating the corresponding health status of the given service in multiple regions.

[0108] In some implementations, the incident information set also indicates at least one severity level for at least one incident, the at least one severity level being selected from multiple severity levels. In some implementations, determining the corresponding health index includes: determining the corresponding health index for multiple services by applying at least one weight for at least one incident at at least one severity level, the at least one weight being selected from multiple weights assigned to multiple severity levels.

[0109] In some implementations, incident information indicates that at least one incident is active.

[0110] In some implementations, the health classification strategy includes multiple corresponding parameter sets for multiple services. In some implementations, the action also includes: for a given service among the multiple services, obtaining a set of historical incident information associated with the given service, the set of historical incident information indicating at least one historical incident reported during the operation of the given service; and based on the set of historical incident information, determining a given set of parameters from the multiple parameter sets for the given service.

[0111] In some implementations, the health classification strategy includes a common set of parameters. In some implementations, the action also includes: obtaining multiple sets of historical incident information associated with multiple services, the historical incident information sets indicating at least one historical incident reported during the operation of the services; and determining the common set of parameters based on the multiple sets of historical incident information.

[0112] In some implementations, this action also includes combining relevant instructions from multiple services in the user interface to present the corresponding health index.

[0113] In another aspect, the subject matter described herein provides a computer-readable medium having machine-executable instructions stored thereon, which, when executed by a device, cause the device to perform one or more implementations of the methods described above.

[0114] The functions described herein can be performed, at least in part, by one or more hardware logic components. For example, but not limited to, illustrative types of hardware logic components that can be used include field-programmable gate arrays (FGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-chips (SoCs), complex programmable logic devices (CPLDs), and the like.

[0115] Program code used to perform the methods described herein can be written in any combination of one or more programming languages. The program code can be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing device, such that, when executed by the processor or controller, the program code enables the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code can be executed entirely or partially on the machine, partially on the machine, partially on a remote machine, or entirely on a remote machine or server as a stand-alone software package.

[0116] In the context of this disclosure, a machine-readable medium can be any tangible medium that may contain or store information used or combined by an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. More specific examples of machine-readable storage media will include electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable optical disc read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.

[0117] Furthermore, although the operations are described in a specific order, this should not be construed as requiring that they be performed in the specific order shown or sequentially, or requiring that all the operations shown be performed to achieve the desired result. In some cases, multitasking and parallel processing may be advantageous. Similarly, although several specific implementation details are included in the above discussion, these details should not be interpreted as limiting the scope of the topics described herein, but rather as descriptions of features that may be specific to a particular implementation. Some features described in the context of separate implementations may also be implemented in combination within a single implementation. Conversely, various features described in a single implementation may also be implemented separately in multiple implementations or in any suitable sub-combination.

[0118] Although the subject matter has been described in language specific to structural features and / or methodological actions, it should be understood that the subject matter specified in the appended claims is not necessarily limited to the specific features or actions described above. Rather, the specific features and actions described above are disclosed as exemplary forms for implementing the claims.

Claims

1. A computer-implemented method comprising: obtaining a plurality of incident information sets associated with a plurality of services provisioned in a computing environment, the incident information sets associated with the services indicating a plurality of incidents reported during operation of the services; The health index of the service associated with each of the plurality of accident information sets is calculated by the following steps: extracting features from the accident information set, wherein the features include a severity level of each of the plurality of accidents; inputting the features into a machine learning algorithm to output a health score for each of a plurality of severity levels associated with the plurality of incidents; as well as evaluating the corresponding health score for each severity level using a health classification strategy to generate a health index for the service, wherein the health index is calculated as a sum of weighted health scores for each severity level, wherein a weight for a particular health score is selected from a plurality of weights corresponding to the plurality of severity levels; generating a health index for each of the plurality of services, wherein the health index indicates a respective health status of the plurality of services and is determined from a same health index range; receiving input from a user interface control defining a filtering policy for the health index; as well as A set of visualization representations corresponding to the health index is output based on the filtering strategy.

2. The computer-implemented method of claim 1 , wherein the incident information set associated with a given service of the plurality of services indicates a plurality of areas where incidents were reported during operation of the given service, and wherein determining the health index comprises: A plurality of health indexes for the given service are determined based on the set of incident information, the plurality of health indexes indicating respective health states of the given service in the plurality of areas.

3. The computer-implemented method of claim 1 , wherein the incident information set further indicates at least one severity level for the incident selected from the plurality of severity levels, and wherein determining the health index comprises: The health index for the plurality of services is determined by applying at least one weight for the incidents at the at least one severity level, the at least one weight being selected from a plurality of weights assigned to the plurality of severity levels. The computer-implemented method of claim 1 , wherein the incident information set indicates that the incident is in an active state.

5. The computer-implemented method of claim 1 , wherein the health classification policy comprises a plurality of respective parameter sets for the plurality of services, the computer-implemented method further comprising: For a given service among the plurality of services, obtaining a historical incident information set associated with the given service, the historical incident information set indicating at least one historical incident reported during operation of the given service; as well as Based on the historical accident information set, a given parameter set among the plurality of parameter sets corresponding to the given service is determined.

6. The computer-implemented method of claim 1 , wherein the health classification strategy comprises a generic set of parameters, the computer-implemented method further comprising: obtaining a plurality of historical incident information sets associated with the plurality of services, the historical incident information sets associated with a service indicating at least one historical incident reported during operation of the service; as well as The common parameter set is determined based on the plurality of historical accident information sets.

7. The computer-implemented method of claim 1 , further comprising: The respective health indexes are presented in a user interface in conjunction with respective indications of the plurality of services.

8. An electronic device comprising: Processing unit; as well as A memory is coupled to the processing unit and stores instructions thereon, wherein when the instructions are executed by the processing unit, the electronic device performs actions, the actions comprising: obtaining a plurality of incident information sets associated with a plurality of services provisioned in a computing environment, the incident information sets associated with the services indicating a plurality of incidents reported during operation of the services; The health index of the service associated with each of the plurality of accident information sets is calculated by the following steps: extracting features from the accident information set, wherein the features include a severity level of each of the plurality of accidents; inputting the features into a machine learning algorithm to output a health score for each of a plurality of severity levels associated with the plurality of incidents; and evaluating the corresponding health score for each severity level using a health classification strategy to generate a health index for the service, wherein the health index is calculated as a sum of weighted health scores for each severity level, wherein a weight for a particular health score is selected from a plurality of weights corresponding to the plurality of severity levels; generating a health index for each of the plurality of services, wherein the health index indicates a respective health status of the plurality of services and is determined from a same health index range; receiving input from a user interface control defining a filtering policy for the health index; and A set of visualization representations corresponding to the health index is output based on the filtering strategy.

9. The electronic device of claim 8, wherein the incident information set associated with a given service of the plurality of services indicates a plurality of areas where incidents were reported during operation of the given service, and wherein determining the health index comprises: A plurality of health indexes for the given service are determined based on the set of incident information, the plurality of health indexes indicating respective health states of the given service in the plurality of areas.

10. The electronic device of claim 8, wherein the accident information set further indicates at least one severity level for the accident selected from the plurality of severity levels, and wherein determining the health index comprises: The health index for the plurality of services is determined by applying at least one weight for the incidents at the at least one severity level, the at least one weight being selected from a plurality of weights assigned to the plurality of severity levels.

11. The electronic device of claim 8, wherein the accident information set indicates that at least one accident is in an active state.

12. The electronic device of claim 8, wherein the health classification policy comprises a plurality of corresponding parameter sets for the plurality of services, the actions further comprising: For a given service among the plurality of services, obtaining a historical incident information set associated with the given service, the historical incident information set indicating at least one historical incident reported during operation of the given service; as well as Based on the historical accident information set, a given parameter set among the plurality of parameter sets corresponding to the given service is determined.

13. The electronic device of claim 8, wherein the health classification policy comprises a common parameter set, the actions further comprising: obtaining a plurality of historical incident information sets associated with the plurality of services, the historical incident information sets associated with a service indicating at least one historical incident reported during operation of the service; as well as The common parameter set is determined based on the plurality of historical accident information sets.

14. The electronic device according to claim 8, wherein the actions further comprise: The health index is presented in a user interface in conjunction with corresponding indications of the plurality of services.

15. At least one non-transitory machine-readable computer storage medium comprising instructions that, when executed by at least one processor, cause the at least one processor to perform operations to: obtaining a plurality of incident information sets associated with a plurality of services provisioned in a computing environment, the incident information sets associated with the services indicating a plurality of incidents reported during operation of the services; The health index of the service associated with each of the plurality of accident information sets is calculated by the following steps: extracting features from the accident information set, wherein the features include a severity level of each of the plurality of accidents; inputting the features into a machine learning algorithm to output a health score for each of a plurality of severity levels associated with the plurality of incidents; as well as evaluating the corresponding health score for each severity level using a health classification strategy to generate a health index for the service, wherein the health index is calculated as a sum of weighted health scores for each severity level, wherein a weight for a particular health score is selected from a plurality of weights corresponding to the plurality of severity levels; generating a health index for each of the plurality of services, wherein the health index indicates a respective health status of the plurality of services and is determined from a same health index range; receiving input from a user interface control defining a filtering policy for the health index; as well as A set of visualization representations corresponding to the health index is output based on the filtering strategy.

16. The at least one non-transitory machine-readable computer storage medium of claim 15, wherein the incident information set associated with a given service of the plurality of services indicates a plurality of areas where incidents were reported during operation of the given service, and wherein the instructions to determine the health index comprise the following instructions: A plurality of health indexes for the given service are determined based on the set of incident information, the plurality of health indexes indicating respective health states of the given service in the plurality of areas.

17. The at least one non-transitory machine-readable computer storage medium of claim 15, wherein the incident information set further indicates at least one severity level for an incident selected from the plurality of severity levels, and wherein the instructions to determine the health index comprise the following instructions: The health index for the plurality of services is determined by applying at least one weight for the incidents at the at least one severity level, the at least one weight being selected from a plurality of weights assigned to the plurality of severity levels.

18. The at least one non-transitory machine-readable computer storage medium of claim 15, wherein the incident information set indicates that at least one incident is in an active state.

19. The at least one non-transitory machine-readable computer storage medium of claim 15, wherein the health classification policy comprises a plurality of respective parameter sets for the plurality of services, and further comprising instructions that cause the at least one processor to: For a given service among the plurality of services, obtaining a historical incident information set associated with the given service, the historical incident information set indicating at least one historical incident reported during operation of the given service; and Based on the historical accident information set, a given parameter set among the plurality of parameter sets corresponding to the given service is determined.

20. The at least one non-transitory machine-readable computer storage medium of claim 15, wherein the health classification policy comprises a generic set of parameters, and further comprising instructions that cause the at least one processor to: obtaining a plurality of historical incident information sets associated with the plurality of services, the historical incident information sets associated with a service indicating at least one historical incident reported during operation of the service; and The common parameter set is determined based on the plurality of historical accident information sets.

Citation Information

Patent Citations

  • Cloud business monitoring method and device

    CN103580934A