Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 7 additions & 2 deletions config/_default/menus/main.en.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1610,16 +1610,21 @@ menu:
url: dashboards/functions/smoothing/
parent: dashboards_functions
weight: 510
- name: Telemetry Source
identifier: dashboards_functions_telemetry_source
url: dashboards/functions/telemetry_source/
parent: dashboards_functions
weight: 511
- name: Timeshift
identifier: dashboards_functions_timeshift
url: dashboards/functions/timeshift/
parent: dashboards_functions
weight: 511
weight: 512
- name: Beta
identifier: dashboards_functions_beta
url: dashboards/functions/beta/
parent: dashboards_functions
weight: 512
weight: 513
- name: Graph Insights
identifier: dashboards_graph_insights
url: dashboards/graph_insights
Expand Down
1 change: 1 addition & 0 deletions content/en/dashboards/functions/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ Functions can be applied to your queries by clicking the Add Function `Σ` icon
{{< nextlink href="/dashboards/functions/regression" >}}Regression: Apply a machine learning function.{{< /nextlink >}}
{{< nextlink href="/dashboards/functions/rollup" >}}Rollup: Control the number of raw data points used. {{< /nextlink >}}
{{< nextlink href="/dashboards/functions/smoothing" >}}Smoothing: Smooth your metric variations.{{< /nextlink >}}
{{< nextlink href="/dashboards/functions/telemetry_source" >}}Telemetry Source: Choose the telemetry source of your metric data.{{< /nextlink >}}
{{< nextlink href="/dashboards/functions/timeshift" >}}Timeshift: Shift your metric data point along the timeline. {{< /nextlink >}}
{{< nextlink href="/dashboards/functions/beta" >}}Beta: Compute the rolling average of a metric.{{< /nextlink >}}
{{< /whatsnext >}}
Expand Down
57 changes: 57 additions & 0 deletions content/en/dashboards/functions/telemetry_source.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
---
title: Telemetry Source
description: Control whether a metric query uses only the queried metric or combines equivalent Datadog and OpenTelemetry metrics.
aliases:
- /graphing/functions/telemetry_source/
further_reading:
- link: "/metrics/open_telemetry/query_metrics"
tag: "Documentation"
text: "Query Across Datadog and OpenTelemetry Metrics"
---

The Telemetry source query modifier controls whether a metric query uses only the queried metric or combines equivalent Datadog and OpenTelemetry metrics. For more information about querying across both sources, see [Query Across Datadog and OpenTelemetry Metrics][1].

In the query editor, select **Modify** and then choose an option in the **Telemetry sources** section.

{{< img src="dashboards/functions/telemetry_source_combined.png" alt="Telemetry sources query modifier showing Combined telemetry selected." style="width:75%;" >}}

| UI option | JSON value | Behavior |
|---|---|---|
| **Native telemetry** (default) | `"semantic_mode": "native"` | Returns only the queried metric. Does not include equivalent metrics from another telemetry source. |
| **Combined telemetry** | `"semantic_mode": "combined"` | Combines equivalent Datadog and OpenTelemetry metrics into a single query result. |

To set the telemetry source in the JSON editor, add the `semantic_mode` key to your query object:

{{< highlight json "hl_lines=6" >}}
"queries": [
{
"name": "query1",
"data_source": "metrics",
"query": "sum:go.goroutine.count{*}",
"semantic_mode": "combined"
}
]
{{< /highlight >}}

## Other functions

{{< whatsnext desc="Consult the other available functions:" >}}
{{< nextlink href="/dashboards/functions/algorithms" >}}Algorithmic: Implement anomaly or outlier detection.{{< /nextlink >}}
{{< nextlink href="/dashboards/functions/arithmetic" >}}Arithmetic: Perform arithmetic operations.{{< /nextlink >}}
{{< nextlink href="/dashboards/functions/count" >}}Count: Count non-zero or non-null values.{{< /nextlink >}}
{{< nextlink href="/dashboards/functions/exclusion" >}}Exclusion: Exclude certain values of your metric.{{< /nextlink >}}
{{< nextlink href="/dashboards/functions/interpolation" >}}Interpolation: Fill or set default values.{{< /nextlink >}}
{{< nextlink href="/dashboards/functions/rank" >}}Rank: Select only a subset of metrics. {{< /nextlink >}}
{{< nextlink href="/dashboards/functions/rate" >}}Rate: Calculate a custom derivative over your metric.{{< /nextlink >}}
{{< nextlink href="/dashboards/functions/regression" >}}Regression: Apply a machine learning function.{{< /nextlink >}}
{{< nextlink href="/dashboards/functions/rollup" >}}Rollup: Control the number of raw data points used. {{< /nextlink >}}
{{< nextlink href="/dashboards/functions/smoothing" >}}Smoothing: Smooth your metric variations.{{< /nextlink >}}
{{< nextlink href="/dashboards/functions/timeshift" >}}Timeshift: Shift your metric data point along the timeline. {{< /nextlink >}}
{{< nextlink href="/dashboards/functions/beta" >}}Beta: Compute the rolling average of a metric.{{< /nextlink >}}
{{< /whatsnext >}}

## Further reading

{{< partial name="whats-next/whats-next.html" >}}

[1]: /metrics/open_telemetry/query_metrics
3 changes: 2 additions & 1 deletion content/en/dashboards/querying/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ Select your visualization from the available [widgets][3].

Choose the metric to graph by searching or selecting it from the dropdown next to {{< ui >}}Metric{{< /ui >}}. If you don't know which metric to use, the metric dropdown provides additional information, including the `unit`, `type`, `interval`, `description`, `tags`, and number of `tag values`.

You may also see Datadog or OpenTelemetry source indicators. If your environment uses both, you can use Datadog's {{< ui >}}Semantic Mode{{< /ui >}} selector to [Query Across Datadog and OpenTelemetry Metrics][18] in a single graph.
You may also see Datadog or OpenTelemetry source indicators. If your environment uses both, you can use Datadog's [Telemetry source][19] query modifier to [Query Across Datadog and OpenTelemetry Metrics][18] in a single graph.

{{< img src="dashboards/querying/metric_dropdown.png" alt="Metric Selector Dropdown" responsive="true" style="width:100%;">}}

Expand Down Expand Up @@ -262,3 +262,4 @@ With split graphs, you can see your metric visualizations broken out by tags.
[16]: /dashboards/widgets/timeseries/#event-overlay
[17]: /logs/explorer/search_syntax/
[18]: /metrics/open_telemetry/query_metrics
[19]: /dashboards/functions/telemetry_source/
11 changes: 6 additions & 5 deletions content/en/metrics/open_telemetry/query_metrics.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,18 +17,18 @@ Datadog helps you bridge this gap by enabling you to:

## Unify OpenTelemetry and Datadog metrics in queries

The [Metrics Query Editor][1] includes a Semantic Mode selector, allowing you to control how Datadog handles potentially equivalent metrics from OTel and Datadog sources.
The [Metrics Query Editor][1] and dashboard widgets include a [Telemetry source][3] query modifier, allowing you to control how Datadog handles potentially equivalent metrics from OTel and Datadog sources. Select **Modify** and then choose **Native telemetry** or **Combined telemetry** in the **Telemetry sources** section.

{{< img src="/metrics/otel/semantic_mode.png" alt="Semantic mode selector on Metrics Explorer page." style="width:100%;" >}}
{{< img src="dashboards/functions/telemetry_source_combined.png" alt="Telemetry sources query modifier showing Combined telemetry selected." style="width:100%;" >}}

Choose between two modes:

### Strictly adhere to native data source (Default)
### Native telemetry (default)

- This mode queries only the specific metric name you enter (whether it's a Datadog or OTel metric).
- It does not include data from any equivalent metrics.

### Combine data from all telemetry sources
### Combined telemetry

- This mode automatically combines data from equivalent Datadog and OTel metrics into a single query, even if you only enter one of the metric names.
- It handles the mapping between equivalent metrics (including complex ones) and aggregates all related timeseries as a single metric.
Expand All @@ -41,7 +41,7 @@ Imagine you're monitoring system load using two different metrics:
- **OTel native**: `system.cpu.load_average.15m`
- **Datadog Agent**: `system.load.15`

If you query for `system.cpu.load_average.15m`, apply a max space aggregation, and set the Semantic Mode to **Combine data from all telemetry sources**, Datadog automatically:
If you query for `system.cpu.load_average.15m`, apply a max space aggregation, and set the telemetry source to **Combined telemetry**, Datadog automatically:

1. Identifies the equivalent Datadog metric: `system.load.15`.
2. Combines the timeseries from both `system.cpu.load_average.15m` and `system.load.15`.
Expand Down Expand Up @@ -81,3 +81,4 @@ You can also see the tag-based logic used for these mappings. Hover over an equi

[1]: https://app.datadoghq.com/metric/explorer
[2]: https://app.datadoghq.com/metric/summary
[3]: /dashboards/functions/telemetry_source/
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading