Skip to content

Commit 02156a4

Browse files
authored
prep release: v1.59.1
1 parent 7543d59 commit 02156a4

18 files changed

+80
-80
lines changed

.changesets/fix_bryn_datadog_agent_sampling.md

-34
This file was deleted.

.changesets/fix_bryn_datadog_upstream_sampling_decision_propagation.md

-6
This file was deleted.

.changesets/fix_bryn_parent_based_sampling_fix_with_fix.md

-18
This file was deleted.

CHANGELOG.md

+58
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,64 @@ All notable changes to Router will be documented in this file.
44

55
This project adheres to [Semantic Versioning v2.0.0](https://semver.org/spec/v2.0.0.html).
66

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.
45+
46+
### Fix non-parent sampling ([PR #6481](https://github.com/apollographql/router/pull/6481))
47+
48+
When the user specifies a non-parent sampler the router should ignore the information from upstream and use its own sampling rate.
49+
50+
The following configuration would not work correctly:
51+
52+
```
53+
exporters:
54+
tracing:
55+
common:
56+
service_name: router
57+
sampler: 0.00001
58+
parent_based_sampler: false
59+
```
60+
All spans are being sampled.
61+
This is now fixed and the router will correctly ignore any upstream sampling decision.
62+
63+
By [@BrynCooke](https://github.com/BrynCooke) in https://github.com/apollographql/router/pull/6481
64+
765
# [1.59.0] - 2024-12-17
866

967
> [!IMPORTANT]

Cargo.lock

+4-4
Original file line numberDiff line numberDiff line change
@@ -204,7 +204,7 @@ dependencies = [
204204

205205
[[package]]
206206
name = "apollo-federation"
207-
version = "1.59.1-rc.0"
207+
version = "1.59.1"
208208
dependencies = [
209209
"apollo-compiler",
210210
"derive_more",
@@ -257,7 +257,7 @@ dependencies = [
257257

258258
[[package]]
259259
name = "apollo-router"
260-
version = "1.59.1-rc.0"
260+
version = "1.59.1"
261261
dependencies = [
262262
"access-json",
263263
"ahash",
@@ -427,7 +427,7 @@ dependencies = [
427427

428428
[[package]]
429429
name = "apollo-router-benchmarks"
430-
version = "1.59.1-rc.0"
430+
version = "1.59.1"
431431
dependencies = [
432432
"apollo-parser",
433433
"apollo-router",
@@ -443,7 +443,7 @@ dependencies = [
443443

444444
[[package]]
445445
name = "apollo-router-scaffold"
446-
version = "1.59.1-rc.0"
446+
version = "1.59.1"
447447
dependencies = [
448448
"anyhow",
449449
"cargo-scaffold",

apollo-federation/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "apollo-federation"
3-
version = "1.59.1-rc.0"
3+
version = "1.59.1"
44
authors = ["The Apollo GraphQL Contributors"]
55
edition = "2021"
66
description = "Apollo Federation"

apollo-router-benchmarks/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "apollo-router-benchmarks"
3-
version = "1.59.1-rc.0"
3+
version = "1.59.1"
44
authors = ["Apollo Graph, Inc. <[email protected]>"]
55
edition = "2021"
66
license = "Elastic-2.0"

apollo-router-scaffold/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "apollo-router-scaffold"
3-
version = "1.59.1-rc.0"
3+
version = "1.59.1"
44
authors = ["Apollo Graph, Inc. <[email protected]>"]
55
edition = "2021"
66
license = "Elastic-2.0"

apollo-router-scaffold/templates/base/Cargo.template.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ apollo-router = { path ="{{integration_test}}apollo-router" }
2222
apollo-router = { git="https://github.com/apollographql/router.git", branch="{{branch}}" }
2323
{{else}}
2424
# Note if you update these dependencies then also update xtask/Cargo.toml
25-
apollo-router = "1.59.1-rc.0"
25+
apollo-router = "1.59.1"
2626
{{/if}}
2727
{{/if}}
2828
async-trait = "0.1.52"

apollo-router-scaffold/templates/base/xtask/Cargo.template.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ apollo-router-scaffold = { path ="{{integration_test}}apollo-router-scaffold" }
1313
{{#if branch}}
1414
apollo-router-scaffold = { git="https://github.com/apollographql/router.git", branch="{{branch}}" }
1515
{{else}}
16-
apollo-router-scaffold = { git = "https://github.com/apollographql/router.git", tag = "v1.59.1-rc.0" }
16+
apollo-router-scaffold = { git = "https://github.com/apollographql/router.git", tag = "v1.59.1" }
1717
{{/if}}
1818
{{/if}}
1919
anyhow = "1.0.58"

apollo-router/Cargo.toml

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "apollo-router"
3-
version = "1.59.1-rc.0"
3+
version = "1.59.1"
44
authors = ["Apollo Graph, Inc. <[email protected]>"]
55
repository = "https://github.com/apollographql/router/"
66
documentation = "https://docs.rs/apollo-router"
@@ -66,7 +66,7 @@ features = ["docs_rs"]
6666
access-json = "0.1.0"
6767
anyhow = "1.0.86"
6868
apollo-compiler.workspace = true
69-
apollo-federation = { path = "../apollo-federation", version = "=1.59.1-rc.0" }
69+
apollo-federation = { path = "../apollo-federation", version = "=1.59.1" }
7070
arc-swap = "1.6.0"
7171
async-channel = "1.9.0"
7272
async-compression = { version = "0.4.6", features = [

dockerfiles/tracing/docker-compose.datadog.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ services:
33

44
apollo-router:
55
container_name: apollo-router
6-
image: ghcr.io/apollographql/router:v1.59.1-rc.0
6+
image: ghcr.io/apollographql/router:v1.59.1
77
volumes:
88
- ./supergraph.graphql:/etc/config/supergraph.graphql
99
- ./router/datadog.router.yaml:/etc/config/configuration.yaml

dockerfiles/tracing/docker-compose.jaeger.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ services:
44
apollo-router:
55
container_name: apollo-router
66
#build: ./router
7-
image: ghcr.io/apollographql/router:v1.59.1-rc.0
7+
image: ghcr.io/apollographql/router:v1.59.1
88
volumes:
99
- ./supergraph.graphql:/etc/config/supergraph.graphql
1010
- ./router/jaeger.router.yaml:/etc/config/configuration.yaml

dockerfiles/tracing/docker-compose.zipkin.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ services:
44
apollo-router:
55
container_name: apollo-router
66
build: ./router
7-
image: ghcr.io/apollographql/router:v1.59.1-rc.0
7+
image: ghcr.io/apollographql/router:v1.59.1
88
volumes:
99
- ./supergraph.graphql:/etc/config/supergraph.graphql
1010
- ./router/zipkin.router.yaml:/etc/config/configuration.yaml

helm/chart/router/Chart.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,10 @@ type: application
2020
# so it matches the shape of our release process and release automation.
2121
# By proxy of that decision, this version uses SemVer 2.0.0, though the prefix
2222
# of "v" is not included.
23-
version: 1.59.1-rc.0
23+
version: 1.59.1
2424

2525
# This is the version number of the application being deployed. This version number should be
2626
# incremented each time you make changes to the application. Versions are not expected to
2727
# follow Semantic Versioning. They should reflect the version the application is using.
2828
# It is recommended to use it with quotes.
29-
appVersion: "v1.59.1-rc.0"
29+
appVersion: "v1.59.1"

helm/chart/router/README.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
[router](https://github.com/apollographql/router) Rust Graph Routing runtime for Apollo Federation
44

5-
![Version: 1.59.1-rc.0](https://img.shields.io/badge/Version-1.59.1--rc.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v1.59.1-rc.0](https://img.shields.io/badge/AppVersion-v1.59.1--rc.0-informational?style=flat-square)
5+
![Version: 1.59.1](https://img.shields.io/badge/Version-1.59.1-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v1.59.1](https://img.shields.io/badge/AppVersion-v1.59.1-informational?style=flat-square)
66

77
## Prerequisites
88

@@ -11,15 +11,15 @@
1111
## Get Repo Info
1212

1313
```console
14-
helm pull oci://ghcr.io/apollographql/helm-charts/router --version 1.59.1-rc.0
14+
helm pull oci://ghcr.io/apollographql/helm-charts/router --version 1.59.1
1515
```
1616

1717
## Install Chart
1818

1919
**Important:** only helm3 is supported
2020

2121
```console
22-
helm upgrade --install [RELEASE_NAME] oci://ghcr.io/apollographql/helm-charts/router --version 1.59.1-rc.0 --values my-values.yaml
22+
helm upgrade --install [RELEASE_NAME] oci://ghcr.io/apollographql/helm-charts/router --version 1.59.1 --values my-values.yaml
2323
```
2424

2525
_See [configuration](#configuration) below._
@@ -98,4 +98,4 @@ helm show values oci://ghcr.io/apollographql/helm-charts/router
9898
| virtualservice.enabled | bool | `false` | |
9999

100100
----------------------------------------------
101-
Autogenerated from chart metadata using [helm-docs v1.11.2](https://github.com/norwoodj/helm-docs/releases/v1.11.2)
101+
Autogenerated from chart metadata using [helm-docs v1.14.2](https://github.com/norwoodj/helm-docs/releases/v1.14.2)

licenses.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -6122,7 +6122,6 @@ <h4>Used by:</h4>
61226122
<li><a href=" https://github.com/dtolnay/erased-serde ">erased-serde</a></li>
61236123
<li><a href=" https://github.com/dtolnay/ghost ">ghost</a></li>
61246124
<li><a href=" https://github.com/dtolnay/itoa ">itoa</a></li>
6125-
<li><a href=" https://github.com/rust-lang/libc ">libc</a></li>
61266125
<li><a href=" https://github.com/dtolnay/linkme ">linkme</a></li>
61276126
<li><a href=" https://github.com/dtolnay/paste ">paste</a></li>
61286127
<li><a href=" https://github.com/dtolnay/prettyplease ">prettyplease</a></li>
@@ -12605,6 +12604,7 @@ <h4>Used by:</h4>
1260512604
<li><a href=" https://github.com/graphql-rust/graphql-client ">graphql_query_derive</a></li>
1260612605
<li><a href=" https://gitlab.com/kornelski/http-serde ">http-serde</a></li>
1260712606
<li><a href=" https://github.com/TedDriggs/ident_case ">ident_case</a></li>
12607+
<li><a href=" https://github.com/rust-lang/libc ">libc</a></li>
1260812608
<li><a href=" https://github.com/alexcrichton/ssh2-rs ">libssh2-sys</a></li>
1260912609
<li><a href=" https://github.com/dtolnay/linkme ">linkme-impl</a></li>
1261012610
<li><a href=" https://github.com/stainless-steel/md5 ">md5</a></li>

scripts/install.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ BINARY_DOWNLOAD_PREFIX="https://github.com/apollographql/router/releases/downloa
1111

1212
# Router version defined in apollo-router's Cargo.toml
1313
# Note: Change this line manually during the release steps.
14-
PACKAGE_VERSION="v1.59.1-rc.0"
14+
PACKAGE_VERSION="v1.59.1"
1515

1616
download_binary() {
1717
downloader --check

0 commit comments

Comments
 (0)