24/7 Service Guard

Updated 6 hours ago by Michael Cretzman

Most enterprises use multiple monitoring and verification tools for each stage of their microservice deployment, and multiple tools for monitoring the live microservice in production. Detecting and investigating regressions and anomalies across these tools consumes a lot of time. For those of you tasked with monitoring microservices, the following image will be familiar.

Harness solves this problem with Harness 24/7 Service Guard.

Harness 24/7 Service Guard:

  • Collects all of your monitoring and verification tools into a single dashboard.
  • Applies Harness Continuous Verification unsupervised machine-learning to detect regressions and anomalies across transactions and events.
  • Lets you drill-down to the individual issue and open it in the related tool.

Harness 24/7 Service Guard gives DevOps operational visibility across all their monitoring tools in all their deployment environments.

24/7 Service Guard's automatic anomaly and regression detection allows you to automatically rollback an application when end-users are impacted, without configuration, thresholds, or rules.

24/7 Service Guard and Harness Workflow Verification Work Together

24/7 Service Guard is a new addition to Harness' existing deployment verification functionality, as described in Continuous Verification. Harness Workflow verification steps provide verification of Harness deployments and the running microservice for the first 15-30 minutes. 24/7 Service Guard provides detection of your microservices from then on, catching problems that surface minutes or hours following deployment.

The following image shows how the Continuous Verification dashboard includes both 24/7 Service Guard and Harness Deployments continuous verification.

  1. 24/7 Service Guard detection.
  2. Harness Deployments continuous verification.
For 24/7 Service Guard, the queries you define to collect logs are specific to the application or service you want monitored. Verification is application/service level. This is unlike Workflows, where verification is performed at the host/node/pod level.

How Does 24/7 Service Guard Work?

24/7 Service Guard sits on top of all your Application Performance Monitoring (APM), verification, and logging tools. 24/7 Service Guard applies:

  • Predictive machine learning models for short-term behavior:
    • Applies deep neural nets to short-term history.
    • Detects unusual patterns due to spikes.
    • Adapts to drift over deployments.
  • Applies memory models for long term behavior:
    • Learns historical/cyclical trends.
    • Quantifies app reliability over Web and business transactions based on the history of anomalous behavior.
    • Quantifies the importance of different Web and business transactions based on app usage over short and long term periods.

Video Demonstration

Here's a 2min video that explains Harness 24/7 Service Guard:

Using 24/7 Service Guard

To use 24/7 Service Guard, in Harness, click Continuous Verification.

The applications configured with 24/7 Service Guard appear. In this example, we have two applications:

Let's look at the first application in detail. The following image describes the 24/7 Service Guard dashboard for the application.

  1. Monitoring sources: Verification and metrics providers, such as AppDynamics, etc. For a list of the verification providers supported by Harness, see Continuous Verification.
  2. Heat map: The heat map is generated using the application and the monitoring sources. Each square is a time segment.
  3. Time resolution: You can go high-level (for example, 30 days) or low-level (12 hours).
  4. Performance regressions: Red and yellow are used to highlight regressions and anomalies. The colors indicate the Overall Risk Level for the monitoring segment.
  5. Transactions analysis: Click a square to see the machine-learning details for the monitoring segment. The analysis details show the transactions for the monitoring segment. High-risk transactions are listed first.
  6. Drill-in to find the cause of the regression or anomaly: When you click the dot for a transaction, you get further details and you can click a link to open the transaction in the monitoring tool. This allows you to go into the monitoring tool and find the root cause of the regression (specific queries, events, etc).

Set Up 24/7 Service Guard

The 24/7 Service Guard set up procedure assumes that you have a Harness Application set up, and a Harness Verification Provider configured using one of the supported verification or monitoring providers. All you need to get started is a supported verification or monitoring tool that is currently monitoring your microservice or application.

For information on setting up a Verification Provider, see Add Verification Providers, for Harness applications, see Set Up a CD Pipeline, and for information on verification provider support, see Continuous Verification.

For details on setting up 24/7 Service Guard for different verification providers, see:

Once 24/7 Service Guard is set up in a Harness Environment, the new configuration is listed according to its Service name (in this example, the Service name Dev-CV-Todolist).

In a few minutes, the Continuous Verification dashboard will display the 24/7 Service Guard configuration.

No deployment is needed to add the 24/7 Service Guard configuration to the dashboard.

Using 24/7 Service Guard for Quick Workflow Steps

Once you have set up 24/7 Service Guard in an Environment, you can use the 24/7 Service Guard setup to quickly configure the Verify Service step in any workflow that uses the Environment.

For example, the following Canary Deployment Workflow uses an Environment with 24/7 Service Guard set up. In Phase 1 of the Workflow, in Verify Service, you can add a Verification Provider.

Under Verify Service, click Add Verification.

In the Add Command dialog, under Verifications, select a verification provider that is also used in the 24/7 Service Guard of the Environment used by this Workflow. For example, AppDynamics.

The AppDynamics dialog appears.

At the top of the dialog, click Populate from Service Verification, and then click the name of the 24/7 Service Guard configuration you want to use.

The dialog is automatically configured with the same settings as the 24/7 Service Guard configuration you selected.

How did we do?