Skip to content

Commit 68f7af7

Browse files
greatly streamline self-hosted monitoring docs (#3828)
* greatly streamline self-hosted monitoring docs * teensy typo * teensy typo 2 * add links to metrics reference * teensy typo 3 --------- Co-authored-by: Brian MacDonald <brian.macdonald@temporal.io>
1 parent 4f824d7 commit 68f7af7

13 files changed

Lines changed: 352 additions & 606 deletions

File tree

docs/develop/dotnet/observability.mdx

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,9 @@ This includes the ways to view which [Workflow Executions](/workflow-execution)
4242
Each Temporal SDK is capable of emitting an optional set of metrics from either the Client or the Worker process.
4343
For a complete list of metrics capable of being emitted, see the [SDK metrics reference](/references/sdk-metrics).
4444

45-
Metrics can be scraped and stored in time series databases, such as [Prometheus](https://prometheus.io/docs/introduction/overview/).
46-
Temporal also provides a dashboard you can integrate with graphing services like [Grafana](https://grafana.com/docs/). For more information, see:
47-
48-
- Temporal's implementation of the [Grafana dashboard](https://github.com/temporalio/dashboards)
49-
- [How to export metrics in Grafana](https://github.com/temporalio/helm-charts#exploring-metrics-via-grafana)
45+
- For an overview of Prometheus and Grafana integration, refer to the [Monitoring](/self-hosted-guide/monitoring) guide.
46+
- For a list of metrics, see the [SDK metrics reference](/references/sdk-metrics).
47+
- For an end-to-end example that exposes metrics with the .NET SDK, refer to the [samples-dotnet](https://github.com/temporalio/samples-dotnet/tree/main/src/OpenTelemetry) repo.
5048

5149
Metrics in .NET are configured on the `Metrics` property of the `Telemetry` property on the `TemporalRuntime`. That object should be created globally and should be used for all clients; therefore, you should configure this before any other Temporal code.
5250

docs/develop/go/observability.mdx

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,9 @@ This section covers features related to viewing the state of the application, in
4444
Each Temporal SDK is capable of emitting an optional set of metrics from either the Client or the Worker process.
4545
For a complete list of metrics capable of being emitted, see the [SDK metrics reference](/references/sdk-metrics).
4646

47-
Metrics can be scraped and stored in time series databases, such as [Prometheus](https://prometheus.io/docs/introduction/overview/).
48-
Temporal also provides a dashboard you can integrate with graphing services like [Grafana](https://grafana.com/docs/). For more information, see:
49-
50-
- Temporal's implementation of the [Grafana dashboard](https://github.com/temporalio/dashboards)
51-
- [How to export metrics in Grafana](https://github.com/temporalio/helm-charts#exploring-metrics-via-grafana)
47+
- For an overview of Prometheus and Grafana integration, refer to the [Monitoring](/self-hosted-guide/monitoring) guide.
48+
- For a list of metrics, see the [SDK metrics reference](/references/sdk-metrics).
49+
- For an end-to-end example that exposes metrics with the Go SDK, refer to the [samples-go](https://github.com/temporalio/samples-go/tree/main/metrics) repo.
5250

5351
To emit metrics from the Temporal Client in Go, create a [metrics handler](https://pkg.go.dev/go.temporal.io/sdk/internal/common/metrics#Handler) from the [Client Options](https://pkg.go.dev/go.temporal.io/sdk@v1.15.0/internal#ClientOptions) and specify a listener address to be used by Prometheus.
5452

docs/develop/java/observability.mdx

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -43,11 +43,9 @@ This section covers features related to viewing the state of the application, in
4343
Each Temporal SDK is capable of emitting an optional set of metrics from either the Client or the Worker process.
4444
For a complete list of metrics capable of being emitted, see the [SDK metrics reference](/references/sdk-metrics).
4545

46-
Metrics can be scraped and stored in time series databases, such as [Prometheus](https://prometheus.io/docs/introduction/overview/).
47-
Temporal also provides a dashboard you can integrate with graphing services like [Grafana](https://grafana.com/docs/). For more information, see:
48-
49-
- Temporal's implementation of the [Grafana dashboard](https://github.com/temporalio/dashboards)
50-
- [How to export metrics in Grafana](https://github.com/temporalio/helm-charts#exploring-metrics-via-grafana)
46+
- For an overview of Prometheus and Grafana integration, refer to the [Monitoring](/self-hosted-guide/monitoring) guide.
47+
- For a list of metrics, see the [SDK metrics reference](/references/sdk-metrics).
48+
- For an end-to-end example that exposes metrics with the Java SDK, refer to the [samples-java](https://github.com/temporalio/samples-java/tree/main/core/src/main/java/io/temporal/samples/metrics) repo.
5149

5250
To emit metrics with the Java SDK, use the[`MicrometerClientStatsReporter`](https://github.com/temporalio/sdk-java/blob/55ee7894aec427d7e384c3519732bdd61119961a/src/main/java/io/temporal/common/reporter/MicrometerClientStatsReporter.java#L34) class to integrate with Micrometer MeterRegistry configured for your metrics backend.
5351
[Micrometer](https://micrometer.io/docs) is a popular Java framework that provides integration with Prometheus and other backends.

docs/develop/python/observability.mdx

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,9 @@ This section covers features related to viewing the state of the application, in
4141
Each Temporal SDK is capable of emitting an optional set of metrics from either the Client or the Worker process.
4242
For a complete list of metrics capable of being emitted, see the [SDK metrics reference](/references/sdk-metrics).
4343

44-
Metrics can be scraped and stored in time series databases, such as [Prometheus](https://prometheus.io/docs/introduction/overview/).
45-
Temporal also provides a dashboard you can integrate with graphing services like [Grafana](https://grafana.com/docs/). For more information, see:
46-
47-
- Temporal's implementation of the [Grafana dashboard](https://github.com/temporalio/dashboards)
48-
- [How to export metrics in Grafana](https://github.com/temporalio/helm-charts#exploring-metrics-via-grafana)
44+
- For an overview of Prometheus and Grafana integration, refer to the [Monitoring](/self-hosted-guide/monitoring) guide.
45+
- For a list of metrics, see the [SDK metrics reference](/references/sdk-metrics).
46+
- For an end-to-end example that exposes metrics with the Python SDK, refer to the [samples-python](https://github.com/temporalio/samples-python/tree/main/prometheus) repo.
4947

5048
Metrics in Python are configured globally; therefore, you should set a Prometheus endpoint before any other Temporal code.
5149

docs/develop/ruby/observability.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,9 @@ This includes viewing [Workflow Executions](/workflow-execution) tracked by the
3232
## Emit metrics {#metrics}
3333

3434
Each Temporal SDK can optionally emit metrics from either the Client or Worker process.
35+
Metrics can be scraped by systems like Prometheus, and graphs can be created using tools like Grafana.
3536

36-
- Metrics can be scraped by systems like [Prometheus](https://prometheus.io/docs/introduction/overview/).
37-
- Graphs can be created using tools like [Grafana](https://grafana.com/docs/).
37+
- For an overview of Prometheus and Grafana integration, refer to the [Monitoring](/self-hosted-guide/monitoring) guide.
3838
- For a list of metrics, see the [SDK metrics reference](/references/sdk-metrics).
3939

4040
Metrics in Ruby are configured on the `metrics` argument of the `telemetry` argument when creating a global `Temporalio::Runtime`. That object should be created globally and should be used for all clients; therefore, you should configure this before any other Temporal code.

docs/develop/typescript/observability.mdx

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,9 @@ This section covers features related to viewing the state of the application, in
3131
Each Temporal SDK is capable of emitting an optional set of metrics from either the Client or the Worker process.
3232
For a complete list of metrics capable of being emitted, see the [SDK metrics reference](/references/sdk-metrics).
3333

34-
Metrics can be scraped and stored in time series databases, such as [Prometheus](https://prometheus.io/docs/introduction/overview/).
35-
Temporal also provides a dashboard you can integrate with graphing services like [Grafana](https://grafana.com/docs/). For more information, see:
36-
37-
- Temporal's implementation of the [Grafana dashboard](https://github.com/temporalio/dashboards)
38-
- [How to export metrics in Grafana](https://github.com/temporalio/helm-charts#exploring-metrics-via-grafana)
34+
- For an overview of Prometheus and Grafana integration, refer to the [Monitoring](/self-hosted-guide/monitoring) guide.
35+
- For a list of metrics, see the [SDK metrics reference](/references/sdk-metrics).
36+
- For an end-to-end example that exposes metrics with the TypeScript SDK, refer to the [samples-typescript](https://github.com/temporalio/samples-typescript/tree/main/interceptors-opentelemetry) repo.
3937

4038
Workers can emit metrics and traces. There are a few [telemetry options](https://typescript.temporal.io/api/interfaces/worker.TelemetryOptions) that can be provided to [`Runtime.install`](https://typescript.temporal.io/api/classes/worker.Runtime/#install). The common options are:
4139

0 commit comments

Comments
 (0)