2025-07-16 20:08:26 +03:00

62 lines
2.1 KiB
YAML

{{- if .Values.metrics.rules.enabled }}
{{- $fullname := include "nextcloud.fullname" . }}
apiVersion: monitoring.coreos.com/v1
kind: PrometheusRule
metadata:
name: {{ $fullname }}
labels:
{{- include "nextcloud.labels" ( dict "rootContext" $ ) | nindent 4 }}
{{- with .Values.metrics.rules.labels }}
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
groups:
{{- with .Values.metrics.rules.defaults }}
{{- if .enabled }}
{{- $filter := .filter | default (printf `namespace="%s",job=~"^%s.*"` $.Release.Namespace $fullname) }}
- name: {{ $fullname }}-Defaults
rules:
- alert: "nextcloud: not reachable"
expr: 'avg(nextcloud_up{ {{ $filter }} }) without(endpoint,container,pod,instance) < 1'
for: 5m
labels:
severity: "critical"
{{- with .labels }}
{{- toYaml . | nindent 12 }}
{{- end }}
annotations:
{{`
summary: "Nextcloud in {{ $labels.namespace }} is not reachable by exporter"
`}}
- alert: "nextcloud: outdated version"
expr: 'sum(nextcloud_system_update_available{ {{ $filter }} }) without(endpoint,container,pod,instance) > 0'
labels:
severity: "warning"
{{- with .labels }}
{{- toYaml . | nindent 12 }}
{{- end }}
annotations:
{{`
summary: "Nextcloud in {{ $labels.namespace }} is outdated"
`}}
- alert: "nextcloud: outdated apps"
expr: 'sum(nextcloud_apps_updates_available_total{ {{ $filter }} }) without(endpoint,container,pod,instance) > 0'
labels:
severity: "warning"
{{- with .labels }}
{{- toYaml . | nindent 12 }}
{{- end }}
annotations:
{{`
summary: "Nextcloud in {{ $labels.namespace }} has {{ $value }} outdated Apps"
`}}
{{- end }}
{{- end }}{{/* end-with prometheus.rules.default */}}
{{- with .Values.metrics.rules.additionalRules }}
- name: {{ $fullname }}-Additional
rules:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- end }}