Custom Dashboards

Updated 3 days ago by Michael Katz

Custom Dashboards provide a toolbox for building your own visual interface around Harness data, using flexible filtering and criteria. By creating and fine-tuning visualizations that slice and dice your data, you can identify and optimize development and deployment velocity, bottlenecks, rollback durations, and other useful metrics. This topic covers:

Intended Audience

  • Account Administrators
  • DevOps


Custom Dashboards expand on Harness Manager's default Main and Services Dashboards. They enable you to visualize and prioritize the deployment and related data that matters to you, in flexible display formats.

Each authorized Harness user has the option to build multiple dashboards, for different reporting purposes.

You create each dashboard around Harness’ rich set of setup, runtime, and instance data.

Insert Harness' Primary Widgets, or build your own Custom Widgets. Primary Widgets display basic DevOps metrics like deployment frequency, lead time to production, mean time to restore, and change failure rate. You can further refine all Widgets to meet your needs.

Once you've placed your Widgets, simply drag to resize or rearrange them in this visual interface. Custom Dashboards remain editable when they're reopened.

You can choose to share each dashboard with one or more Harness User Groups.

To access Custom Dashboards, select Dashboards > Custom Dashboards.

If you're a Harness Account Administrator, you can create Custom Dashboards (see Creating and Managing Dashboards). Click either of the Create Custom Dashboard links to create your first dashboard.

The link at upper right will remain available once the Custom Dashboards page is populated.

If you're a non-Administrator, both links will be unavailable. See List View and Using Dashboards below to work with existing Custom Dashboards.

List View

As soon as one or more Custom Dashboards are available to you, the Custom Dashboards page fills in to list them:

If you are not an Account Administrator, you will see only Custom Dashboards that have been shared with your User Groups. For details, see Creating and Managing Dashboards.

This list view provides the controls shown below:

Creating and Managing Dashboards

A Harness user's interaction with Custom Dashboards is role-based. Certain options depend on their membership in a Harness User Group with specific Account Permissions, as follows.

Account Administrators

A user who belongs to at least one User Group that has the Administer Other Account Functions permission is an Account Administrator. These users can:

  • View all Custom Dashboards on your Harness account—regardless of whether a dashboard has been shared with this, or any, User Group.
  • Create, configure, modify, and delete Custom Dashboards.
  • Add, configure, modify, and delete Widgets within Custom Dashboards.


A user who belongs to no User Group with Administer Other Account Functions permission is a non‑administrator. These users can:

  • View only Custom Dashboards that they've created themselves, or Custom Dashboards explicitly shared with at least one User Group to which they belong.
  • Refresh data on dashboards' Widgets.
  • Resize and move Widgets within dashboards. (But not add, reconfigure, or delete Widgets.)

Managing Groups and Permissions

Administrators can create User Groups with particular permission sets that accommodate particular audiences. For example, managers might need broad access to view and customize dashboards for reporting purposes, but not require permissions to alter the underlying Harness entities. For these users, you could create a group that includes the Administer Other Account Functions permission, but has limited Application permissions.

This topic's following sections address the Custom Dashboard creation and configuration options available to Account Administrators:

Creating a Dashboard

To create a Custom Dashboard:

  1. Select Dashboards > Custom Dashboards. This displays the Custom Dashboards page.
  2. Click Create Custom Dashboard at the upper right. This displays the dialog shown below.
  3. Enter a Dashboard Name. This should be unique within your Harness account.
  4. Optionally, enter a Description. (This will be visible under the Custom Dashboards page's description icon. It can communicate the dashboard's purpose to other users, or include a warning like "Do not delete.")
  5. Click Submit. Your new Custom Dashboard will open in the initial state shown below.

Editing or Cloning a Dashboard

At a Custom Dashboard's upper-right corner, Account Administrators see these additional controls for modifying the dashboard as a whole.

The options available here are:

Click Add Widget to populate your Custom Dashboard with Widgets. (See Adding and Configuring Dashboard Widgets.)

To enter/exit Full Screen display of your dashboard, click the Expand/Collapse toggle.

To edit, clone (duplicate), or delete your dashboard, click the More Options ••• menu to display the options shown below.

To change your dashboard's name, or description, click Edit. This reopens the dialog that you used to create the dashboard.

To create a copy of your dashboard (including all its configured Widgets), click Clone. This opens a dialog where you'll be prompted to confirm, or override, the cloned dashboard's name and description.

To remove this dashboard from your Harness account, click Delete. This displays a confirmation dialog.

Deleting a Custom Dashboard also permanently deletes any configurations you've applied to its Widgets. This action cannot be undone.

Adding and Configuring Dashboard Widgets

To populate or expand a Custom Dashboard:

  1. Click Add Widget at the dashboard's upper right.
  2. From the resulting Add Widget wizard, either select one of the displayed Primary Widgets, or click Custom Widgets.
  3. Once you've selected a Widget to add, the Add Widget wizard displays the Configure Your Widget page shown here. Configure (edit) the Widget as outlined in the following sections.

Editing Widgets

Configure your Widget using the fields in the Add Widget wizard's left pane. (The same wizard is retitled Edit Widget when you edit an existing Widget.) Required fields are indicated by an asterisk (*).

This section generally covers controls and conventions available for all Widgets. However, the Widget and visualization that you select detemine the specific configuration fields, options, and previews available in the Add/Edit Widget wizard.

The Filter <Widget Type> Data panel provides no default filtering. To change this, click Add Data Filter. For detailed options, see Filters, Groups, and Tags.

The Define Data Refresh Interval field has a default value of Never, unless you select an interval.

The preview pane on the right indicates the data that your Widget will retrieve. It also displays warnings about missing data, with a reminder about possible causes. You can click this pane's Update button to refresh the data after each configuration change.

Once you've configured the Widget to your satisfaction, click Create Widget at lower right to add the Widget to your Dashboard.

When you edit an existing Widget, this button's label changes to Update Widget.

Filters, Groups, and Tags

Many Primary Widget and Custom Widget types offer you the option to filter and/or group by multiple Harness entities and Tags. This provides flexibility to define and display complex relationships among your data. But because of this same flexibility:

Beware of accidentally over-filtering, in ways that hide desired data or return an unwarranted No Data! error. Filter conditions are not validated when you preview, create, or update a Widget. Therefore, as you add filter conditions and filter values, keep in mind the filter logic outlined in this section.

Click Add Data Filter to begin defining a filter. Use the resulting Select Filter Type drop-down to select which Harness entity or Tag to use as the filter.

In most Widgets, the Add Data Filter link remains available to add more filters. Multiple filter rows combine using AND search logic: Each filter that you add can further narrow the returned data.

The adjacent Select Filter Values drop-down allows multiple selections. Within a given filter, values combine using OR search logic: Each value that you add can broaden the data retrievable with this filter.

To remove a filter, click the trash-can icon at its right.

Tag Filters

Each Tag filter can target only a single entity type (Application, Environment, or Service). To filter on one or more Tags across multiple entities, add more filter rows.

Remember that the AND logic among the rows will further restrict your retrieved data.

Too Much Data? No Data?

Here are some tips about how to avoid unintended filter results.

Adding a filter target with no filter value doesn't restrict the Widget's data at all. The incomplete examples below don't actually function as filters.

Beware of filtering on an entity name, or Tag value, that's not used on the Harness entity (Metric) you're charting. This will generate a No Data! error when you preview, create, or update the Widget.

Having covered Custom Dashboards' built-in logic, let's look at the Primary Widgets and Custom Widgets you can place on your dashboards.

Filtering and Grouping by Tag Expressions in Custom Dashboards

Ensure you are familiar with Harness Tags and using variables expressions in Tag names and values. See Use Expressions in Workflow and Pipeline Tags.

You can create a Harness Custom Dashboard that filters or groups using Tags that use expressions.

You can use a Tag whose name or value uses an expression, but you can only filter or group by Tag name.

You cannot use the expression itself to filter or group. You must use the evaluated expression displayed in Harness Deployments.

You can use expression Tags in the following Widgets:

  • Deployments
  • Lead Time to Production
  • Mean Time to Restore

You simply use the Tag (Deployments) option in the Data Filter or Group By settings of the Widget.

This can be a very powerful method for creating Custom Dashboards.

For example, let's say you had a Workflow or Pipeline Tag named commitID. The value for it is passed in as an expression, such as ${workflow.variables.commitID}. You could provide the value for the variable using a Trigger that passes in a Git commit ID.

When you deploy, the expression is evaluated and the commit ID is displayed in Deployments like commitID:521747298a3790fde1710f3aa2d03b55020575aa.

Now, you can create a Custom Dashboard for the name commitID that filters or groups deployments by each commit ID.

Primary Widgets

The Primary Widgets Library gets you started by offering predefined visualizations of popular DevOps metrics like deployment frequency, lead time to production, mean time to restore, and change failure rate.

Below are details about the available Primary Widgets:

Most-Active Services

This Widget corresponds to the horizontal bar chart that appears on Harness' Main Dashboard. It graphs the deployment activity of your Harness Services, in descending order. This version is customizable by data refresh interval.

Each bar's length indicates the number of times each Service has been deployed. Colored bands show a breakdown by deployment status. (Scroll to the Widget's bottom to display a legend by color.)

For this Widget, Harness Services are the only entity available for measurement, and Applications are the only available filters.

Change Failure Rate

This Widget visually ranks your Harness Services by their consistency of deployment success, in descending order.

You can customize the chart's data refresh interval.

For this Widget, Harness Services are the only entity available for measurement. You can filter on Applications, Environments, and Service Tags.

Deployment History

This Widget is a customizable (by time range) version of the Deployments bar chart that appears on Harness' Main Dashboard.

For this Widget, deployments are the only entity available for measurement, and time intervals are the only available filters.

Lead Time to Production

This Widget shows the average duration of deployments, per Application, over a selectable time range. The display shows one diamond node for each Application.

For this Widget, deployments are the only entity available for measurement. You can filter on multiple Harness entities and Tags.

Deployment Frequency

This line chart shows the daily frequency of deployments, per Application. You can customize the Time Filter (range), and can filter on multiple Harness entities and Tags.

Mean Time to Restore

This line chart shows the average rollback duration, per Application. You can customize the Time Filter (range), and can filter on multiple Harness entities and Tags.

On most Widgets, authorized users can click chart segments to access detailed underlying data.

Artifacts and Build Numbers

When you looks at the dashboard that uses a Primary Widget, you will see the Artifact and Build Number in its detail view.

For example, here is a Most Active Services dashboard:

When you click the dashboard, you see its details. There is a column for Artifacts.

Custom Widgets

Custom Widgets offer less predefined structure than Primary Widgets, but much more flexibility. You first select a principal Harness entity that you want to analyze. Next, you select a visualization type. Finally, you can closely configure details, including visual formatting, time range, groupings, and additional filters.

Custom Widget Types

The following entities are available at the top level. Harness considers each to be a Custom Widget type:

  • Deployments
  • Instances
  • Services
  • Environments
  • Workflows

  • Pipelines
  • Triggers
  • Applications
  • Cloud Providers
  • Connectors

Visualization Types

Under each Custom Widget type, a row of buttons enables you to select a supported visualization type. You'll see some or all of these options, depending on which entity you're selecting:

Donut Chart

Bar Chart

Line Chart

Area Chart

Aggregate Value

Configuring Custom Widgets

To set up a Custom Widget:

  1. Click Add Widget at a Custom Dashboard's upper right.
  2. From the resulting Add Widget wizard, click Custom Widgets.
  3. Scroll to the type of Harness entity you want to analyze.
  4. Click to select a visualization type available for this Widget type.

    This opens the Add Widget wizard (alternately labeled Update Widget if you're reconfiguring an existing Widget).

    You can change the visualization type here by clicking a different type on the upper-left button row.

  1. As you configure your Widget in the left pane, click the right pane's Preview Real Data button (relabeled Update after your first click) to preview the result of each configuration change.

    The fields available at left depend on the Widget type (Harness entity) and visualization type you've selected. We provide tips for specific combinations in the sections below, but in general:
  • The Title field is required. Enter a title that is unique on this Custom Dashboard.
  • The Filter Data panel defaults to empty/unfiltered. For the controls you use to fill it in, see Editing Widgets. For filtering logic, see Filters, Groups, and Tags.
  • The Metric always defaults to Count, unless you select a different measurement quantity.
  • The Group By drop-down offers a variety of Group By Entity, Group By Time, and Group By Tag options. (Update the preview pane to verify the grouping you want.)
  • A Second Group By option is also available in some Widget/visualization combinations.
  • To display a time series, you must set at least one Group By field to a time interval.
  1. Click Create Widget to add the Widget to your Dashboard.

Remember that authorized users will be able to click segments of the visualization to display detailed underlying data. Below are configuration tips for specific Custom Widget types and visualization types.
Select Entities That Show Deployment Data

Ensure that you select entities that contain deployment data.

For example, if you select a Workflow with only Pre-deployment and Post-deployment steps but no deployment Phases, it will not have data on deploying a Service because no Service is used.

Also, this Workflow might have an Environment in its setup, but that Environment wont be used because there is no deployment Phase. Hence, there will be no Environment data to display.

In an example such as this, the custom dashboard columns will be null.


When displaying Deployments as a bar chart, if you Group By a granular entity (such as Services, Environments, or Cloud Providers) or Tag, the displayed count can increase. This is because the display now includes the count for these entities or Tags.

Bar Chart

Compared to a donut chart, a bar chart provides more ways to define and display your data: Using the added Second Group By option, you can display a time series, or you can plot an X/Y relationship among two entities or Tags.

Line Chart and Area Chart

For these visualization types, the Second Group By setting must always be a time interval, building a time series. Use the Group By field to break down the displayed totals by any entity or Tag you want.

Aggregate Value

This visualization type (selectable with a "21” icon) simply displays a Total Count. It offers no Group By options and no clickable chart segments, but users can click its View Details link to pass through to the Harness Manager details aggregated in the total.

Using Dashboards

To display a Custom Dashboard, just click its name in the list view's Name column. You will next see the Widgets (visualizations) that are configured for that dashboard.

On each Widget, the controls and options highlighted below are available to all users:

On Aggregate Value visualizations, click this link to access the underlying data.

If you're a non-Administrator, your access to the detailed data and settings behind the visualizations is filtered by your User Group memberships and permissions.

Modifying Existing Widgets and Dashboards

Account Administrators see additional controls for modifying a dashboard's existing Widgets, and for modifying the dashboard itself:

Click a Widget's More Options ••• menu to display the options shown here.

Remove deletes the Widget from this Custom Dashboard.

If you've customized the Widget's configuration, this also removes that configuration from your Harness account. This action cannot be undone. Consider first cloning a backup copy of the current dashboard.

Edit reopens controls for configuring the Widget.


These controls at the dashboard's upper right modify the dashboard as a whole. For details, see Editing or Cloning a Dashboard.

Putting It All Together

Using the options outlined above, you can assemble Custom Dashboards that combine a diversity of monitoring/reporting metrics, and visualization types, in one place. Your needs and imagination define what's possible.


The following status filters are in progress and does not work presently.


How did we do?