From a971f808de23563a6a848202d5eb52f8f712a9c3 Mon Sep 17 00:00:00 2001 From: Marek Skrobacki Date: Wed, 3 Jun 2026 19:58:06 +0100 Subject: [PATCH 1/2] Revert "fix: specify scrapeProtocols for Nautobot" This reverts commit 47d2482c8d5775bb07d89e31797ea231bca3bfce. --- components/nautobot/kustomization.yaml | 5 ----- components/nautobot/rule-nautobot-absent.yaml | 20 ------------------- .../nautobot/servicemonitor-celery.yaml | 17 ---------------- .../nautobot/servicemonitor-default.yaml | 20 ------------------- components/nautobot/values.yaml | 7 +++++-- 5 files changed, 5 insertions(+), 64 deletions(-) delete mode 100644 components/nautobot/rule-nautobot-absent.yaml delete mode 100644 components/nautobot/servicemonitor-celery.yaml delete mode 100644 components/nautobot/servicemonitor-default.yaml diff --git a/components/nautobot/kustomization.yaml b/components/nautobot/kustomization.yaml index 683f99b59..126e7f695 100644 --- a/components/nautobot/kustomization.yaml +++ b/components/nautobot/kustomization.yaml @@ -4,11 +4,6 @@ kind: Kustomization resources: - job-nautobot-post-deploy.yaml - - job-nautobot-constance-config.yaml - # https://rackspace.atlassian.net/browse/PUC-1485 - - servicemonitor-celery.yaml - - servicemonitor-default.yaml - - rule-nautobot-absent.yaml configMapGenerator: - name: cluster-data diff --git a/components/nautobot/rule-nautobot-absent.yaml b/components/nautobot/rule-nautobot-absent.yaml deleted file mode 100644 index f9af1ead1..000000000 --- a/components/nautobot/rule-nautobot-absent.yaml +++ /dev/null @@ -1,20 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: PrometheusRule -metadata: - labels: - app.kubernetes.io/component: nautobot - name: nautobot - namespace: nautobot -spec: - groups: - - name: nautobot - rules: - - alert: NautobotAbsent - annotations: - description: Nautobot has disappeared from Prometheus service discovery. - summary: Nautobot is down. - expr: | - absent(up{job=~".*nautobot.*"} == 1) - for: 5m - labels: - severity: critical diff --git a/components/nautobot/servicemonitor-celery.yaml b/components/nautobot/servicemonitor-celery.yaml deleted file mode 100644 index a045e9e23..000000000 --- a/components/nautobot/servicemonitor-celery.yaml +++ /dev/null @@ -1,17 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: ServiceMonitor -metadata: - labels: - app.kubernetes.io/component: nautobot-celery-default - app.kubernetes.io/instance: nautobot - app.kubernetes.io/name: nautobot - name: nautobot-celery-default - namespace: nautobot -spec: - endpoints: - - port: workermetrics - selector: - matchLabels: - app.kubernetes.io/component: nautobot-celery-default - app.kubernetes.io/instance: nautobot - app.kubernetes.io/name: nautobot diff --git a/components/nautobot/servicemonitor-default.yaml b/components/nautobot/servicemonitor-default.yaml deleted file mode 100644 index bcbe1992e..000000000 --- a/components/nautobot/servicemonitor-default.yaml +++ /dev/null @@ -1,20 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: ServiceMonitor -metadata: - labels: - app.kubernetes.io/component: nautobot-default - app.kubernetes.io/instance: nautobot - name: nautobot-default - namespace: nautobot -spec: - scrapeProtocols: - - OpenMetricsText1.0.0 - endpoints: - - interval: 1m - port: http - scrapeTimeout: 30s - selector: - matchLabels: - app.kubernetes.io/component: nautobot-default - app.kubernetes.io/instance: nautobot - app.kubernetes.io/name: nautobot diff --git a/components/nautobot/values.yaml b/components/nautobot/values.yaml index 8c5311298..b26de045c 100644 --- a/components/nautobot/values.yaml +++ b/components/nautobot/values.yaml @@ -91,6 +91,9 @@ redis: ingress: enabled: false -# disabled in favor of explicit definitions through kustomize +# (nicholas.kuechler) seeing something unexpected: +# https://networktocode.slack.com/archives/C01NWPK6WHL/p1736445485521569 metrics: - enabled: false + enabled: true + prometheusRule: + enabled: true From 46a09765d3b9796b99b1ace83b8ee57f0d1c40a9 Mon Sep 17 00:00:00 2001 From: Marek Skrobacki Date: Wed, 3 Jun 2026 20:03:22 +0100 Subject: [PATCH 2/2] fix(nautobot): configure scrapeProtocols for metrics sometimes the django-prometheus returns HTTP 406. The exact headers captured on the wire were: Accept: application/openmetrics-text;version=1.0.0;escaping=allow-utf-8;q=0.6,application/openmetrics-text;version=0.0.1;q=0.5,text/plain;version=1.0.0;escaping=allow-utf-8;q=0.4,text/plain;version=0.0.4;q=0.3,*/*;q=0.2 after some experimentation we found that dropping version=0.4.0 after text/plain fixes the problem. This PR addresses the same underlying issue by specifying the header through spec.scrapeProtocols on the ServiceMonitor resource. --- components/nautobot/values.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/components/nautobot/values.yaml b/components/nautobot/values.yaml index b26de045c..84abf3732 100644 --- a/components/nautobot/values.yaml +++ b/components/nautobot/values.yaml @@ -97,3 +97,6 @@ metrics: enabled: true prometheusRule: enabled: true + serviceMonitor: + scrapeProtocols: + - OpenMetricsText1.0.0