---
title: Temporal Cloud
description: >-
  Gain insights into system health, workflow efficiency, task execution and
  performance bottlenecks for your instance.
breadcrumbs: Docs > Integrations > Temporal Cloud
---

# Temporal Cloud
Integration version1.0.1         Temporal Cloud - Overview 1Temporal Cloud - Overview 2Temporal Cloud - Overview 3Temporal Cloud - Overview 4Temporal Cloud - Overview 5
## Overview{% #overview %}

{% alert level="info" %}
To take advantage of expanded metrics and improved monitoring, Datadog encourages migrating to the newer [Temporal Cloud OpenMetrics integration](https://docs.datadoghq.com/integrations/temporal-cloud-openmetrics/).
{% /alert %}

[Temporal Cloud](https://temporal.io/cloud/) is a scalable platform for orchestrating complex workflows which enables developers to focus on building applications, without worrying about fault tolerance and consistency.

This integration gathers Temporal Cloud metrics into Datadog, offering insights into system health, workflow efficiency, task execution, and performance bottlenecks.

## Setup{% #setup %}

### Generate a Metrics endpoint URL in Temporal Cloud{% #generate-a-metrics-endpoint-url-in-temporal-cloud %}

1. To generate a CA certificate and an end-entity certificate, see [certificate management](https://docs.temporal.io/cloud/certificates#use-certstrap/).
   - **Note**: An expired root CA certificate invalidates all downstream certificates. To avoid disruptions to your systems, use certificates with long validity periods.
1. Log in to [Temporal Cloud](https://cloud.temporal.io/) with an account owner or global admin role.
1. Go to **Settings**, and select the **Observability** tab.
1. Under the **Certificates** section, add your root CA certificate (`.pem` file content) and save it.
   - **Note**: If an observability endpoint is already set up, you can append your root CA certificate.
1. Click **Save** to generate the endpoint URL under the **Endpoint** section. The URL should look like: `https://<account_id>.tmprl.cloud/prometheus`.

### Connect your Temporal Cloud account to Datadog{% #connect-your-temporal-cloud-account-to-datadog %}

1. Add your Account ID, End-entity Certificate file content, and End-entity Certificate key file content\

| Parameters                              | Description                                                                                                              |
| --------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| Account ID                              | Temporal Cloud account ID to be used as part of the metrics endpoint URL: `https://<account_id>.tmprl.cloud/prometheus`. |
| End-entity certificate file content     | Content of the end-entity certificate for secure access and communication with the Metrics endpoint.                     |
| End-entity certificate key file content | Content of the end-entity certificate key for secure access and communication with the Metrics endpoint.                 |

1. Click the **Save** button to save your settings.

## Data Collected{% #data-collected %}

### Metrics{% #metrics %}

|  |
|  |
| **temporal.cloud.v0\_frontend\_service\_error**(count)          | Increase in gRPC errors                                                                                                                                                                         |
| **temporal.cloud.v0\_frontend\_service\_request**(count)        | Increase in gRPC requests received                                                                                                                                                              |
| **temporal.cloud.v0\_poll\_success**(count)                     | Increase in count tasks that are successfully matched to a poller                                                                                                                               |
| **temporal.cloud.v0\_poll\_success\_sync**(count)               | Increase in count tasks that are successfully sync matched to a poller                                                                                                                          |
| **temporal.cloud.v0\_poll\_timeout**(count)                     | When no tasks are available for a poller before timing out, this is increase in count of such tasks                                                                                             |
| **temporal.cloud.v0\_replication\_lag\_p50**(gauge)             | P50 value using histogram of replication lag during a specific time interval for a multi-region Namespace*Shown as second*                                                                      |
| **temporal.cloud.v0\_replication\_lag\_p90**(gauge)             | P90 value using histogram of replication lag during a specific time interval for a multi-region Namespace*Shown as second*                                                                      |
| **temporal.cloud.v0\_replication\_lag\_p95**(gauge)             | P95 value using histogram of replication lag during a specific time interval for a multi-region Namespace*Shown as second*                                                                      |
| **temporal.cloud.v0\_replication\_lag\_p99**(gauge)             | P99 value using histogram of replication lag during a specific time interval for a multi-region Namespace*Shown as second*                                                                      |
| **temporal.cloud.v0\_resource\_exhausted\_error**(count)        | Increase in gRPC requests received that were rate-limited                                                                                                                                       |
| **temporal.cloud.v0\_schedule\_action\_success**(count)         | Increase in count of successful execution of a Scheduled Workflow                                                                                                                               |
| **temporal.cloud.v0\_schedule\_buffer\_overruns**(count)        | When average schedule run length is greater than average schedule interval while a buffer_all overlap policy is configured, this is the increase in count of such scheduled workflow executions |
| **temporal.cloud.v0\_schedule\_missed\_catchup\_window**(count) | Increase in count of skipped Scheduled executions when Workflows were delayed longer than the catchup window                                                                                    |
| **temporal.cloud.v0\_schedule\_rate\_limited**(count)           | Increase in count of Scheduled Workflows that were delayed due to exceeding a rate limit                                                                                                        |
| **temporal.cloud.v0\_service\_latency\_p50**(gauge)             | P50 latency for SignalWithStartWorkflowExecution, SignalWorkflowExecution, StartWorkflowExecution operations*Shown as second*                                                                   |
| **temporal.cloud.v0\_service\_latency\_p90**(gauge)             | P90 latency for SignalWithStartWorkflowExecution, SignalWorkflowExecution, StartWorkflowExecution operations*Shown as second*                                                                   |
| **temporal.cloud.v0\_service\_latency\_p95**(gauge)             | P95 latency for SignalWithStartWorkflowExecution, SignalWorkflowExecution, StartWorkflowExecution operations*Shown as second*                                                                   |
| **temporal.cloud.v0\_service\_latency\_p99**(gauge)             | P99 latency for SignalWithStartWorkflowExecution, SignalWorkflowExecution, StartWorkflowExecution operations*Shown as second*                                                                   |
| **temporal.cloud.v0\_state\_transition**(count)                 | Increase in count of state transitions for each Namespace                                                                                                                                       |
| **temporal.cloud.v0\_total\_action**(count)                     | Increase in count of Temporal Cloud Actions                                                                                                                                                     |
| **temporal.cloud.v0\_workflow\_cancel**(count)                  | Increase in count of Workflows canceled before completing execution                                                                                                                             |
| **temporal.cloud.v0\_workflow\_continued\_as\_new**(count)      | Increase in count of Workflow Executions that were Continued-As-New from a past execution                                                                                                       |
| **temporal.cloud.v0\_workflow\_failed**(count)                  | Increase in count of Workflows that failed before completion                                                                                                                                    |
| **temporal.cloud.v0\_workflow\_success**(count)                 | Increase in count of Workflows that successfully completed                                                                                                                                      |
| **temporal.cloud.v0\_workflow\_terminate**(count)               | Increase in count of Workflows terminated before completing execution                                                                                                                           |
| **temporal.cloud.v0\_workflow\_timeout**(count)                 | Increase in count of Workflows that timed out before completing execution                                                                                                                       |

### Service Checks{% #service-checks %}

The Temporal Cloud integration does not include any service checks.

### Events{% #events %}

The Temporal Cloud integration does not include any events.

## Support{% #support %}

Need help? Contact [Datadog support](https://docs.datadoghq.com/help/).
