diff --git a/content/en/opentelemetry/compatibility.md b/content/en/opentelemetry/compatibility.md index 07ff4451213..9e98ab8d02d 100644 --- a/content/en/opentelemetry/compatibility.md +++ b/content/en/opentelemetry/compatibility.md @@ -59,7 +59,7 @@ Datadog provides support for the OpenTelemetry Traces, Metrics, and Logs APIs ac | [Node.js][33] | {{< X >}} | *Not Yet Supported* | {{< X >}} | | [Java][34] | {{< X >}} | *Not Yet Supported* | *Not Yet Supported* | | [Go][35] | {{< X >}} | *Not Yet Supported* | *Not Yet Supported* | -| [Ruby][36] | {{< X >}} | *Not Yet Supported* | *Not Yet Supported* | +| [Ruby][36] | {{< X >}} | Alpha | *Not Yet Supported* | | [PHP][37] | {{< X >}} | *Not Yet Supported* | *Not Yet Supported* | ## More details @@ -70,7 +70,8 @@ OpenTelemetry traces that have [generative AI attributes](https://opentelemetry. ### Runtime metrics -Setups using the OpenTelemetry SDK follow the [OpenTelemetry Runtime Metrics][1] specification. +- **Datadog SDK setups**: Emit [Runtime Metrics][23] using DogStatsD (UDP port 8125). Ensure DogStatsD is enabled in your Datadog Agent. +- **OpenTelemetry SDK setups**: Follow the [OpenTelemetry Runtime Metrics][1] specification and are typically sent using OTLP (port 4317/4318). ### Real User Monitoring (RUM) diff --git a/content/en/opentelemetry/config/environment_variable_support.md b/content/en/opentelemetry/config/environment_variable_support.md index a659979922c..f1e8375ce56 100644 --- a/content/en/opentelemetry/config/environment_variable_support.md +++ b/content/en/opentelemetry/config/environment_variable_support.md @@ -41,6 +41,12 @@ The precedence rules on this page describe how *Datadog SDKs* resolve configurat See the relevant SDK Configuration page for default values and more information. +## Network requirements + +{{% otel-network-requirements %}} + +**Note**: Even when `DD_METRICS_OTEL_ENABLED=true`, standard Runtime Metrics are still emitted through DogStatsD. + ## Datadog SDK configuration These environment variables enable the Datadog SDK to ingest OpenTelemetry Metrics and Logs API data. For guides on how to instrument your application, see the [language-specific instrumentation documentation][14]. diff --git a/content/en/opentelemetry/instrument/api_support/dotnet/logs.md b/content/en/opentelemetry/instrument/api_support/dotnet/logs.md index 08c53c6b8c9..037bf2065e0 100644 --- a/content/en/opentelemetry/instrument/api_support/dotnet/logs.md +++ b/content/en/opentelemetry/instrument/api_support/dotnet/logs.md @@ -20,7 +20,7 @@ This feature works by intercepting logs from the built-in `Microsoft.Extensions. ## Prerequisites - **Datadog SDK**: `dd-trace-dotnet` version [3.31.0][4] or later. -- **An OTLP-compatible destination**: You must have a destination ready to receive OTLP data, such as the Datadog Agent or OpenTelemetry Collector. +- **An OTLP-compatible destination**: You must have a destination (Agent or Collector) listening on ports 4317 (gRPC) or 4318 (HTTP) to receive OTel logs. ## Setup @@ -128,4 +128,4 @@ If you are using Datadog's traditional log injection (where `DD_LOGS_INJECTION=t [3]: /tracing/trace_collection/automatic_instrumentation/dd_libraries/dotnet-core#install-the-tracer [4]: https://github.com/DataDog/dd-trace-dotnet/releases/tag/v3.31.0 [5]: /opentelemetry/instrument/api_support/dotnet/traces -[200]: /opentelemetry/setup/otlp_ingest_in_the_agent/?tab=host#enabling-otlp-ingestion-on-the-datadog-agent \ No newline at end of file +[200]: /opentelemetry/setup/otlp_ingest_in_the_agent/?tab=host#enabling-otlp-ingestion-on-the-datadog-agent diff --git a/content/en/opentelemetry/instrument/api_support/dotnet/metrics.md b/content/en/opentelemetry/instrument/api_support/dotnet/metrics.md index 0c87c7a717f..38241d943d9 100644 --- a/content/en/opentelemetry/instrument/api_support/dotnet/metrics.md +++ b/content/en/opentelemetry/instrument/api_support/dotnet/metrics.md @@ -17,7 +17,8 @@ further_reading: - **.NET Runtime**: Requires .NET 6+ (or `System.Diagnostics.DiagnosticSource` v6.0.0+). See [Version and instrument support](#net-version-and-instrument-support) for a list of supported instruments by version. - **Datadog SDK**: dd-trace-dotnet version 3.30.0 or later. -- **An OTLP-compatible destination**: You must have a destination ready to receive OTLP data, such as the Datadog Agent or OpenTelemetry Collector. +- **An OTLP-compatible destination**: You must have a destination (Agent or Collector) listening on ports 4317 (gRPC) or 4318 (HTTP) to receive OTel metrics. +- **DogStatsD (Runtime Metrics)**: If you also use Datadog [Runtime Metrics][5], ensure the Datadog Agent is listening for DogStatsD traffic on port 8125 (UDP). OTel configuration does not route Runtime Metrics through OTLP. ## Setup @@ -136,4 +137,5 @@ Here is the minimum version required for each instrument type: [2]: /tracing/trace_collection/automatic_instrumentation/dd_libraries/dotnet-framework/#install-the-tracer [3]: /tracing/trace_collection/automatic_instrumentation/dd_libraries/dotnet-core#install-the-tracer [4]: https://learn.microsoft.com/en-us/dotnet/api/system.diagnostics.metrics +[5]: /tracing/metrics/runtime_metrics/ [200]: /opentelemetry/setup/otlp_ingest_in_the_agent/?tab=host#enabling-otlp-ingestion-on-the-datadog-agent \ No newline at end of file diff --git a/content/en/opentelemetry/instrument/api_support/nodejs/logs.md b/content/en/opentelemetry/instrument/api_support/nodejs/logs.md index d0a76798f25..647c716eec8 100644 --- a/content/en/opentelemetry/instrument/api_support/nodejs/logs.md +++ b/content/en/opentelemetry/instrument/api_support/nodejs/logs.md @@ -18,7 +18,7 @@ further_reading: - **Datadog SDK**: `dd-trace-js` version 5.73.0 or later. - **OpenTelemetry Logs API**: The `@opentelemetry/api-logs` package is required, in a version from `v0.200.0` up to `v1.0`. -- **An OTLP-compatible destination**: You must have a destination ready to receive OTLP data, such as the Datadog Agent or OpenTelemetry Collector. +- **An OTLP-compatible destination**: You must have a destination (Agent or Collector) listening on ports 4317 (gRPC) or 4318 (HTTP) to receive OTel logs.
@opentelemetry/api-logs package is still experimental, and version 1.0 has not yet been released. New versions of this package may introduce breaking changes that affect compatibility.
diff --git a/content/en/opentelemetry/instrument/api_support/nodejs/metrics.md b/content/en/opentelemetry/instrument/api_support/nodejs/metrics.md
index 0319fba3bc4..7bc6f6a8d6d 100644
--- a/content/en/opentelemetry/instrument/api_support/nodejs/metrics.md
+++ b/content/en/opentelemetry/instrument/api_support/nodejs/metrics.md
@@ -18,7 +18,8 @@ further_reading:
- **Datadog SDK**: `dd-trace-js` version 5.81.0 or later.
- **OpenTelemetry API**: `@opentelemetry/api` version 1.0.0 to 1.10.0. (The Datadog SDK provides the implementation for this API).
-- **An OTLP-compatible destination**: You must have a destination ready to receive OTLP data, such as the Datadog Agent or OpenTelemetry Collector.
+- **An OTLP-compatible destination**: You must have a destination (Agent or Collector) listening on ports 4317 (gRPC) or 4318 (HTTP) to receive OTel metrics.
+- **DogStatsD (Runtime Metrics)**: If you also use Datadog [Runtime Metrics][3], ensure the Datadog Agent is listening for DogStatsD traffic on port 8125 (UDP). OTel configuration does not route Runtime Metrics through OTLP.
## Setup
@@ -114,4 +115,5 @@ For more details, see the [OpenTelemetry Node.js onboarding docs][2].
[1]: /opentelemetry/config/environment_variable_support
[2]: https://github.com/open-telemetry/opentelemetry-js/blob/4dded45ec67f90998d75e3ddbde9872b6b466183/doc/metrics.md#getting-started
+[3]: /tracing/metrics/runtime_metrics/
[200]: /opentelemetry/setup/otlp_ingest_in_the_agent/?tab=host#enabling-otlp-ingestion-on-the-datadog-agent
diff --git a/content/en/opentelemetry/instrument/api_support/python/logs.md b/content/en/opentelemetry/instrument/api_support/python/logs.md
index 01678607a13..27d8316ef1e 100644
--- a/content/en/opentelemetry/instrument/api_support/python/logs.md
+++ b/content/en/opentelemetry/instrument/api_support/python/logs.md
@@ -16,7 +16,7 @@ further_reading:
## Prerequisites
- **Datadog SDK**: `dd-trace-py` version 3.18.0 or later.
-- **An OTLP-compatible destination**: You must have a destination ready to receive OTLP data, such as the Datadog Agent or OpenTelemetry Collector.
+- **An OTLP-compatible destination**: You must have a destination (Agent or Collector) listening on ports 4317 (gRPC) or 4318 (HTTP) to receive OTel logs.
## Setup
diff --git a/content/en/opentelemetry/instrument/api_support/python/metrics.md b/content/en/opentelemetry/instrument/api_support/python/metrics.md
index 76cc47c2c17..d3aab7c3f1a 100644
--- a/content/en/opentelemetry/instrument/api_support/python/metrics.md
+++ b/content/en/opentelemetry/instrument/api_support/python/metrics.md
@@ -16,7 +16,8 @@ further_reading:
## Prerequisites
- **Datadog SDK**: dd-trace-py version 3.18.0 or later.
-- **An OTLP-compatible destination**: You must have a destination ready to receive OTLP data, such as the Datadog Agent or OpenTelemetry Collector.
+- **An OTLP-compatible destination**: You must have a destination (Agent or Collector) listening on ports 4317 (gRPC) or 4318 (HTTP) to receive OTel metrics.
+- **DogStatsD (Runtime Metrics)**: If you also use Datadog [Runtime Metrics][2], ensure the Datadog Agent is listening for DogStatsD traffic on port 8125 (UDP). OTel configuration does not route Runtime Metrics through OTLP.
## Setup
@@ -125,4 +126,5 @@ If you are currently using the Datadog DogStatsD client and want to migrate to t
{{< partial name="whats-next/whats-next.html" >}}
[1]: /opentelemetry/config/environment_variable_support
+[2]: /tracing/metrics/runtime_metrics/
[200]: /opentelemetry/setup/otlp_ingest_in_the_agent/?tab=host#enabling-otlp-ingestion-on-the-datadog-agent
\ No newline at end of file
diff --git a/content/en/opentelemetry/instrument/api_support/ruby/metrics.md b/content/en/opentelemetry/instrument/api_support/ruby/metrics.md
index cbdbbea2733..8117567e8aa 100644
--- a/content/en/opentelemetry/instrument/api_support/ruby/metrics.md
+++ b/content/en/opentelemetry/instrument/api_support/ruby/metrics.md
@@ -18,7 +18,8 @@ further_reading:
## Prerequisites
- **Datadog SDK**: `datadog` gem version 2.23.0 or later.
-- **An OTLP-compatible destination**: You must have a destination ready to receive OTLP data, such as the Datadog Agent or OpenTelemetry Collector.
+- **An OTLP-compatible destination**: You must have a destination (Agent or Collector) listening on ports 4317 (gRPC) or 4318 (HTTP) to receive OTel metrics.
+- **DogStatsD (Runtime Metrics)**: If you also use Datadog [Runtime Metrics][2], ensure the Datadog Agent is listening for DogStatsD traffic on port 8125 (UDP). OTel configuration does not route Runtime Metrics through OTLP.
## Setup
@@ -31,7 +32,7 @@ Follow these steps to enable OTel Metrics API support in your Ruby application.
gem 'opentelemetry-metrics-sdk', '~> 0.8'
gem 'opentelemetry-exporter-otlp-metrics', '~> 0.4'
```
-2.
+2. Install dependencies:
```sh
bundle install
```
@@ -129,3 +130,4 @@ If you are using the OTel SDK with your own manual OTLP exporter configuration:
{{< partial name="whats-next/whats-next.html" >}}
[1]: /opentelemetry/config/environment_variable_support
+[2]: /tracing/metrics/runtime_metrics/
diff --git a/content/en/opentelemetry/setup/ddot_collector/install/kubernetes_daemonset.md b/content/en/opentelemetry/setup/ddot_collector/install/kubernetes_daemonset.md
index 72bd1fe8a87..11e61d24d6e 100644
--- a/content/en/opentelemetry/setup/ddot_collector/install/kubernetes_daemonset.md
+++ b/content/en/opentelemetry/setup/ddot_collector/install/kubernetes_daemonset.md
@@ -36,12 +36,12 @@ Install and set up the following on your machine:
- [Helm (v3+)][54]
- [kubectl][5]
-{{< callout btn_hidden="true" >}}
-Support for deploying the DDOT Collector on Linux-based bare-metal hosts and virtual machines is in Preview. To get started, follow the Linux documentation.
-{{< /callout >}}
+**Network**: {{% otel-network-requirements %}}
## Install the Datadog Agent with OpenTelemetry Collector
+