Monitor deployments and services in CD dashboards
This topic describes how you can use DORA and other advanced metrics for deployments and services in CD Dashboards.
Deployments and services can be measured within the CD module (Overview and Services in the Deployments module), and using the Harness Platform Dashboards (Dashboards). Platform Dashboards also let you create highly advanced custom dashboards.
Overview and services dashboards
Deployments are tracked in the Overview dashboard and services are tracked in the Services dashboard.
Overview dashboard
The Overview dashboard provides status for deployments and workloads and an overall Deployments Health metric:
Services dashboard
What is a Harness service? A Harness service is both a logical and configuration view of the services you deploy.
The logical view is immutable and contains a name, unique Id, and description. The configuration view can be changed with each stage of a pipeline and contains the artifacts, manifests, repo URLs, etc., for that stage's deployment of the service.
What is a service instance in Harness? Harness licensing is determined by the service instances you deploy. A service instance is when you use Harness to deploy the service and the underlying infrastructure for the instance. For example, an instance of a Kubernetes workload where Harness creates the pods.
The Services dashboard provides an overview of all the services and service instances in your project:
Individual service dashboards
Click a service in the Total Services table to drill down and show more service details:
Summary
Clicking on any card in this dashboard filters the executions list to display executions relevant to the service and environment/artifact under the Summary tab.
An individual service's dashboard includes the following features.
If you do not see the environment cards in the dashboard, you will see the message There are no environments with instances in this service
. This appears when there are no environments with active instances for this services. You must perform an actual deployment to create active instances. Active services are services that are part of any pipeline execution (deployment) over the past 30 Days.
Open tasks
The See Open Tasks banner will appear when there are deployments with the following statuses:
- Aborted
- Aborted by deployment freeze
- Expired
- Waiting
- Failed
Selecting See Open Tasks displays executions that require your attention.
The See Open Tasks button is only displayed if there are tasks over the last 3 days.
If the See Open Tasks button is not displayed, you can see all tasks using the bell icon also.
Environments tab
The Environments tab lists the environments and environment groups where the service has been deployed by one or more pipelines.
Each environment card shows the following:
-
Latest artifact: the latest artifact deployed by this service to this environment.
-
Drift detection: drift detection displays any differences between the deployments to environments in an environment group. For example, in this drift detection, two environments are using different artifacts with this service:
Drift detection is helpful to detect inconsistencies. For example, when you deploy a service to an environment group and there are failures in one of the environments due to which no artifacts were deployed to it, or someone performs a different deployment to one or more of the group's environments.
-
Instance details: details of the instance(s) where the service was deployed.
Select Open Execution in the instance details to see the pipeline execution that deployed the service instance.
-
Deployments: each deployment to a selected environment or environment group. If you filter using My Deployments you see only those deployments that your user account initiated.
How instance information is obtained
Harness runs a perpetual task that constantly polls for the same combination of Harness service/artifact + Harness environment + Harness infrastructure definition. The instance count and details are updated as a result of this polling.
The perpetual task is alive for 2 weeks, even after the instances are downsized/deleted.
Deployed By shows the email address of the Harness user that initiated the deployment.
Deployed By will show AUTO_SCALED
for instances that are scaled outside of the Harness deployment. For example, if you log into the Kubernetes cluster and manually auto-scale instances.
Artifacts tab
The Artifacts tab shows how the service is mapped to multiple artifacts.
Each artifact card shows the following:
-
Artifacts: each artifact used in a deployment of this service.
-
Environments: each environment where an artifact was deployed with the service.
- Clicking the artifact name opens details for all environments where the artifact was deployed.
- Clicking the environment opens details for the specific environment where the artifact was deployed.
-
Drift detection: drift detection displays any differences between the deployments to environments in an environment group. For example, if the artifact you select was deployed to an environment group, but one of the group's environments deployed a different artifact, or due to some failure no artifacts were deployed to it, it is highlighted as drift:
Clicking on the environment group name will take you to that group's settings. Clicking on the execution date (in this example,
1 day ago
) will take you to the pipeline execution details. -
Deployments: each deployment of the service or a selected artifact. If you filter using My Deployments you see only those deployments that your user account initiated.
View in table
The View in Table setting shows all of the instances of the service in all of the environments used with the service.
Select Open Execution in the instance details to see the pipeline execution that deployed the service instance.
Custom sequencing
In the Environment tab, you can use Custom Sequence to arrange the environment cards.
To use custom sequencing, do the following:
-
Select the Environments tab.
-
Select the gear icon next to Custom Sequence.
-
In Environment Sequence, reorder the environment/group to create the sequence you want.
-
Select Save.
Now the environment cards are reordered.
You can disable custom sequencing by toggling it off.
Chart Versions tab
- This information appears only for services that were deployed using Helm charts.
- Currently, this feature is behind the Feature Flag
CDC_SERVICE_DASHBOARD_REVAMP_NG
. Contact Harness Support to enable the feature.
The Chart Versions tab shows tiles for each Helm chart used to deploy the service (and a tile for any non-Helm deployments). Each tile shows the instances/artifact, environment, and latest deployment time.
To view details for a specific Helm chart, click the version link in the tile.
Metrics
The Metrics tab under a particular service provides details of the service deployments, failure rate, deployment frequency, active service instances, the underlying environment and infrastructure for the service instance, and a summary of instances over a selected period.
Configuration
You can view the configuration of the selected service in Visual and YAML view under this tab.
Referenced by
This tab lists all pipelines that are using the selected service.
Platform Dashboards
The account-wide Platform Dashboards in Harness contain built-in dashboards that provide advanced details about your deployments and services.
You can also create your own custom dashboards describing dimensions, aggregates, calculations, and data relationships.
The Platform Dashboards use LookML, a dependency-tracking tool that provides predefined data types and syntax for data modeling.
Built-in CD Dashboards
Currently, there are two built-in CD Dashboads: Deployments and Services.
To view these dashboards, in Harness, click Dashboards.
In Dashboards, click Deployments or By Harness.
Look for Deployments Dashboard and Services Dashboard in the dashboards that appear.
Let's look at each dashboard.
Deployments
The Deployments dashboard provides deployment frequency, status, and duration data in detail:
Clicking on data points, service names, or project names brings up data tables.
Click on the Pipeline or Deployment and a new browser tab opens with the Pipeline or deployment from the record.
All data can be downloaded in multiple formats with multiple options.
Services
The services dashboard lets you measure the efficiency of your service deployments by Environment and overall.
Custom CD Dashboards
You can create custom CD dashboards that visualize deployment data by different dimensions and measures.
Here's a quick video showing how to create a CD custom dashboard:
See Create Dashboards.
Monitor Harness and Jira approvals using custom CD dashboards
Harness CD includes an extensive set of dashboard components that provide visibility into your Harness and Jira approvals. You can create custom dashbards that quickly answer questions such as:
- Which Harness and Jira Approval steps are currently waiting for approval?
- Which Jira Create and Update steps failed, and when?
- Which Jira tickets have been rejected in the Jira Approval step?
- Which deployments resulted in new or updated Jira tickets?
- How many approvals and rejections occurred in the specified time window?
- Dashboard components for ServiceNow approvals are not currently available.
You can use the following components to monitor the performance of your deployment pipelines:
-
Harness Approval
-
Step type
-
Duration
-
Status
-
Approver
-
Error messages
-
Approval message
-
-
Jira Approval
-
Step type
-
Issue Type
-
Jira Ticket URL (or issue key and project if the URL is unavailable)
-
-
JIRA Create/Update
-
Step type
-
Duration
-
Status
-
Error messages
-
Jira Ticket URL
-
Ticket Status
-
Monitor deployment performance using custom CD dashboards
Harness CD includes an extensive set of dashboard components that provide visibility into the performance of your deployment pipelines. You can create custom dashboards to answer questions such as:
-
Which stages and steps contain performance bottlenecks?
-
Which stages and steps have the most failures?
-
How much time is spent deploying artifacts vs. waiting for Jira approvals and other manual interventions?
You can use the following components to monitor the performance of your deployment pipelines:
-
Manifest data (only for HelmChart Manifest type for Helm/K8s deployments)
-
Helm version
-
Chart Version
-
Manifest identifier
-
-
Custom Stage Details
-
Stage type
-
Duration
-
Status
-
Failure message
-