Skip to content

Commit 85806f9

Browse files
authored
Chart: Add controller.metrics.serviceMonitor.scrapeTimeout. (#14018)
1 parent 96e45e7 commit 85806f9

File tree

4 files changed

+25
-0
lines changed

4 files changed

+25
-0
lines changed

charts/ingress-nginx/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -417,6 +417,7 @@ metadata:
417417
| controller.metrics.serviceMonitor.relabelings | list | `[]` | |
418418
| controller.metrics.serviceMonitor.sampleLimit | int | `0` | Defines a per-scrape limit on the number of scraped samples that will be accepted. |
419419
| controller.metrics.serviceMonitor.scrapeInterval | string | `"30s"` | |
420+
| controller.metrics.serviceMonitor.scrapeTimeout | string | `""` | Timeout after which the scrape is ended. Not being set if empty and therefore defaults to the global Prometheus scrape timeout. |
420421
| controller.metrics.serviceMonitor.targetLabels | list | `[]` | |
421422
| controller.metrics.serviceMonitor.targetLimit | int | `0` | Defines a limit on the number of scraped targets that will be accepted. |
422423
| controller.minAvailable | int | `1` | Minimum available pods set in PodDisruptionBudget. Define either 'minAvailable' or 'maxUnavailable', never both. |

charts/ingress-nginx/templates/controller-servicemonitor.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,9 @@ spec:
3232
endpoints:
3333
- port: {{ .Values.controller.metrics.portName }}
3434
interval: {{ .Values.controller.metrics.serviceMonitor.scrapeInterval }}
35+
{{- if .Values.controller.metrics.serviceMonitor.scrapeTimeout }}
36+
scrapeTimeout: {{ .Values.controller.metrics.serviceMonitor.scrapeTimeout }}
37+
{{- end }}
3538
{{- if .Values.controller.metrics.serviceMonitor.honorLabels }}
3639
honorLabels: true
3740
{{- end }}

charts/ingress-nginx/tests/controller-servicemonitor_test.yaml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,3 +77,22 @@ tests:
7777
- equal:
7878
path: spec.targetLimit
7979
value: 100
80+
81+
- it: should create a ServiceMonitor with `scrapeTimeout` if `controller.metrics.serviceMonitor.scrapeTimeout` is set
82+
set:
83+
controller.metrics.enabled: true
84+
controller.metrics.serviceMonitor.enabled: true
85+
controller.metrics.serviceMonitor.scrapeTimeout: 60s
86+
asserts:
87+
- equal:
88+
path: spec.endpoints[0].scrapeTimeout
89+
value: 60s
90+
91+
- it: should create a ServiceMonitor without `scrapeTimeout` if `controller.metrics.serviceMonitor.scrapeTimeout` is unset
92+
set:
93+
controller.metrics.enabled: true
94+
controller.metrics.serviceMonitor.enabled: true
95+
controller.metrics.serviceMonitor.scrapeTimeout: ""
96+
asserts:
97+
- notExists:
98+
path: spec.endpoints[0].scrapeTimeout

charts/ingress-nginx/values.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -937,6 +937,8 @@ controller:
937937
## namespaceSelector:
938938
## any: true
939939
scrapeInterval: 30s
940+
# -- Timeout after which the scrape is ended. Not being set if empty and therefore defaults to the global Prometheus scrape timeout.
941+
scrapeTimeout: ""
940942
# honorLabels: true
941943
targetLabels: []
942944
relabelings: []

0 commit comments

Comments
 (0)