You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: CHANGELOG.md
+58
Original file line number
Diff line number
Diff line change
@@ -4,6 +4,64 @@ All notable changes to Router will be documented in this file.
4
4
5
5
This project adheres to [Semantic Versioning v2.0.0](https://semver.org/spec/v2.0.0.html).
6
6
7
+
# [1.59.1] - 2025-01-08
8
+
9
+
## 🐛 Fixes
10
+
11
+
### Fix transmitted header value for Datadog priority sampling resolution ([PR #6017](https://github.com/apollographql/router/pull/6017))
12
+
13
+
The router now transmits correct values of `x-datadog-sampling-priority` to downstream services.
14
+
15
+
Previously, an `x-datadog-sampling-priority` of `-1` was incorrectly converted to `0` for downstream requests, and `2` was incorrectly converted to `1`. When propagating to downstream services, this resulted in values of `USER_REJECT` being incorrectly transmitted as `AUTO_REJECT`.
16
+
17
+
### Enable accurate Datadog APM metrics ([PR #6017](https://github.com/apollographql/router/pull/6017))
18
+
19
+
The router supports a new preview feature, the `preview_datadog_agent_sampling` option, to enable sending all spans to the Datadog Agent so APM metrics and views are accurate.
20
+
21
+
Previously, the sampler option in `telemetry.exporters.tracing.common.sampler` wasn't Datadog-aware. To get accurate Datadog APM metrics, all spans must be sent to the Datadog Agent with a `psr` or `sampling.priority` attribute set appropriately to record the sampling decision.
22
+
23
+
The `preview_datadog_agent_sampling` option enables accurate Datadog APM metrics. It should be used when exporting to the Datadog Agent, via OTLP or Datadog-native.
24
+
25
+
```yaml
26
+
telemetry:
27
+
exporters:
28
+
tracing:
29
+
common:
30
+
# Only 10 percent of spans will be forwarded from the Datadog agent to Datadog. Experiment to find a value that is good for you!
31
+
sampler: 0.1
32
+
# Send all spans to the Datadog agent.
33
+
preview_datadog_agent_sampling: true
34
+
```
35
+
36
+
Using these options can decrease your Datadog bill, because you will be sending only a percentage of spans from the Datadog Agent to Datadog.
37
+
38
+
> [!IMPORTANT]
39
+
> - Users must enable `preview_datadog_agent_sampling` to get accurate APM metrics. Users that have been using recent versions of the router will have to modify their configuration to retain full APM metrics.
40
+
> - The router doesn't support [`in-agent` ingestion control](https://docs.datadoghq.com/tracing/trace_pipeline/ingestion_mechanisms/?tab=java#in-the-agent).
41
+
> - Configuring `traces_per_second` in the Datadog Agent won't dynamically adjust the router's sampling rate to meet the target rate.
42
+
> - Sending all spans to the Datadog Agent may require that you tweak the `batch_processor` settings in your exporter config. This applies to both OTLP and Datadog native exporters.
43
+
44
+
Learn more by reading the [updated Datadog tracing documentation](https://apollographql.com/docs/router/configuration/telemetry/exporters/tracing/datadog) for more information on configuration options and their implications.
0 commit comments