From 4defa9870fa5e9f6075231d7eb17bd9fdf0ddb14 Mon Sep 17 00:00:00 2001 From: Tom Kerkhove Date: Fri, 31 Jan 2020 13:20:00 +0100 Subject: [PATCH] Support Prometheus service discovery --- changelog/content/experimental/unreleased.md | 8 ++++++++ charts/promitor-agent-scraper/README.md | 1 + charts/promitor-agent-scraper/templates/service.yaml | 6 ++++++ charts/promitor-agent-scraper/values.yaml | 1 + 4 files changed, 16 insertions(+) create mode 100644 changelog/content/experimental/unreleased.md diff --git a/changelog/content/experimental/unreleased.md b/changelog/content/experimental/unreleased.md new file mode 100644 index 000000000..90f7115db --- /dev/null +++ b/changelog/content/experimental/unreleased.md @@ -0,0 +1,8 @@ +--- +title: "(2018-09-15)" +date: 2018-09-02T20:46:47+02:00 +weight: 1 +version: +--- + +- {{% tag added %}} Support Prometheus service discovery in Helm chart ([#861](https://github.com/tomkerkhove/promitor/issues/861)) diff --git a/charts/promitor-agent-scraper/README.md b/charts/promitor-agent-scraper/README.md index 390832f2f..b55202a5c 100644 --- a/charts/promitor-agent-scraper/README.md +++ b/charts/promitor-agent-scraper/README.md @@ -63,6 +63,7 @@ their default values. | `prometheus.scrapeEndpointPath` | Path where the scraping endpoint for Prometheus is being exposed | `/metrics` | | `prometheus.enableMetricTimestamps` | Indication wheter or not to include timestamp | `true` | | `prometheus.metricUnavailableValue` | Value to report in Prometheus when no metric was found wheter or not to include timestamp | `NaN` | +| `prometheus.enableServiceDiscovery` | Indication wheter or not service discovery with annotations should be enabled ([docs](https://github.com/helm/charts/tree/master/stable/prometheus#scraping-pod-metrics-via-annotations)) | `true` | | `telemetry.applicationInsights.enabled` | Indication wheter or not to send telemetry to Azure Application Insights | `false` | | `telemetry.applicationInsights.logLevel` | Minimum level of logging for Azure Application Insights | | | `telemetry.applicationInsights.key` | Application Insights instrumentation key | | diff --git a/charts/promitor-agent-scraper/templates/service.yaml b/charts/promitor-agent-scraper/templates/service.yaml index 3d09f4f9c..a03cc8a13 100644 --- a/charts/promitor-agent-scraper/templates/service.yaml +++ b/charts/promitor-agent-scraper/templates/service.yaml @@ -8,6 +8,12 @@ metadata: release: {{ .Release.Name }} heritage: {{ .Release.Service }} type: {{ .Values.service.labelType }} +{{- if .Values.prometheus.enableServiceDiscovery }} + annotations: + prometheus.io/scrape: "true" + prometheus.io/path: {{ .Values.prometheus.scrapeEndpointPath | quote }} + prometheus.io/port: {{ .Values.service.targetPort | quote }} +{{- end }} spec: {{- if .Values.service.exposeExternally }} type: LoadBalancer diff --git a/charts/promitor-agent-scraper/values.yaml b/charts/promitor-agent-scraper/values.yaml index f08b52b31..fb27f670a 100644 --- a/charts/promitor-agent-scraper/values.yaml +++ b/charts/promitor-agent-scraper/values.yaml @@ -19,6 +19,7 @@ prometheus: scrapeEndpointPath: /metrics enableMetricTimestamps: True metricUnavailableValue: NaN + enableServiceDiscovery: True telemetry: defaultLogLevel: "Error" applicationInsights: