Skip to content

Commit 9255d17

Browse files
authored
[newrelic-logging] support GOV (FedRAMP) endpoints via common-library 2.3.3 (#2320)
#### What this PR does / why we need it: Enables New Relic Kubernetes Logging to target GOV (FedRAMP) endpoints. Consumer-side follow-up to #[2318](#2318), which added the GOV endpoints to common-library. - Bump `common-library` dependency 2.3.1 → 2.3.3 (Chart.yaml + Chart.lock) - Bump chart version 1.38.2 → 1.38.3 - Add `tests/endpoint_region_selection_test.yaml` covering region → endpoint resolution (staging / US / EU / GOV / custom / defaults) When `global.fedramp.enabled=true`, endpoints resolve to: - Log API → `https://gov-log-api.newrelic.com/log/v1` - Metric host → `gov-metric-api.newrelic.com ## Verification update on the GOV endpoint test Deployed the chart with --set global.fedramp.enabled=true and confirmed it picks the GOV endpoint — DaemonSet env ENDPOINT=https://gov-log-api.newrelic.com/log/v1, and the plugin logs the same URL it dials at runtime. Sent logs with a US ingestion key → they landed in [NRDB](https://onenr.io/0gR7POl8xjo), but in a regular US account (756053). Reason: routing to an account/cell is decided by the license key, not the endpoint. The gov endpoint just authenticates the key and routes to that key's account — so a US key lands in a US cell even via the gov endpoint; a fed-account key would route to a fed cell. So: - fedramp.enabled=true correctly targets the GOV endpoint and the full ingest pipeline works - Data landed in a US cell because the key is a US key — this doesn't confirm fed-cell ingestion #### Which issue this PR fixes *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)* - fixes # #### Special notes for your reviewer: **Note:** Not tested against the real GOV (FedRAMP) endpoint — I don't have access to a FedRAMP account/license key. GOV endpoint resolution is verified via unit tests + rendered output; end-to-end ingest was validated only on the US path. #### Checklist [Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.] - [x] Chart Version bumped - [x] Variables are documented in the README.md - [x] Title of the PR starts with chart name (e.g. `[mychartname]`) # Release Notes to Publish (nr-k8s-otel-collector) If this PR contains changes in `nr-k8s-otel-collector`, please complete the following section. All other charts should ignore this section. <!--BEGIN-RELEASE-NOTES--> ## 🚀 What's Changed * Tell the world about the latest changes in the chart. <!--END-RELEASE-NOTES-->
1 parent e040e13 commit 9255d17

3 files changed

Lines changed: 40 additions & 5 deletions

File tree

charts/newrelic-logging/Chart.lock

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
dependencies:
22
- name: common-library
33
repository: https://helm-charts.newrelic.com
4-
version: 2.3.1
5-
digest: sha256:ff23c3a4c0a51e4de9d2015b09bad1fbe227741ef620c8646f14c09820623b20
6-
generated: "2026-06-10T12:12:55.184563+05:30"
4+
version: 2.3.3
5+
digest: sha256:0b85ba8fc894ed0fd1832688a954efdaeb80df7c9fe60c225eb124db7fbd409c
6+
generated: "2026-07-01T13:51:52.766749+05:30"

charts/newrelic-logging/Chart.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
apiVersion: v2
22
description: A Helm chart to deploy New Relic Kubernetes Logging as a DaemonSet, supporting both Linux and Windows nodes and containers
33
name: newrelic-logging
4-
version: 1.38.2
4+
version: 1.38.3
55
appVersion: 3.6.0
66
home: https://github.com/newrelic/kubernetes-logging
77
icon: https://newrelic.com/assets/newrelic/source/NewRelic-logo-square.svg
@@ -14,5 +14,5 @@ keywords:
1414
- newrelic
1515
dependencies:
1616
- name: common-library
17-
version: 2.3.1
17+
version: 2.3.3
1818
repository: "https://helm-charts.newrelic.com"

charts/newrelic-logging/tests/endpoint_region_selection_test.yaml

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,41 @@ tests:
106106
template: templates/daemonset-windows.yaml
107107

108108

109+
- it: selects FedRAMP (GOV) endpoints when global.fedramp.enabled is true
110+
set:
111+
licenseKey: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFFFFNRAL
112+
global:
113+
fedramp:
114+
enabled: true
115+
enableWindows: true
116+
asserts:
117+
# Linux
118+
- contains:
119+
path: spec.template.spec.containers[0].env
120+
content:
121+
name: ENDPOINT
122+
value: "https://gov-log-api.newrelic.com/log/v1"
123+
template: templates/daemonset.yaml
124+
- contains:
125+
path: spec.template.spec.containers[0].env
126+
content:
127+
name: METRICS_HOST
128+
value: "gov-metric-api.newrelic.com"
129+
template: templates/daemonset.yaml
130+
# Windows
131+
- contains:
132+
path: spec.template.spec.containers[0].env
133+
content:
134+
name: ENDPOINT
135+
value: "https://gov-log-api.newrelic.com/log/v1"
136+
template: templates/daemonset-windows.yaml
137+
- contains:
138+
path: spec.template.spec.containers[0].env
139+
content:
140+
name: METRICS_HOST
141+
value: "gov-metric-api.newrelic.com"
142+
template: templates/daemonset-windows.yaml
143+
109144
- it: selects custom logs endpoint if provided
110145
set:
111146
licenseKey: euaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFFFFNRAL

0 commit comments

Comments
 (0)