This PR contains newly rendered Kubernetes manifests automatically generated by the CI workflow. ### Details - **Trigger**: `pull_request` by `@alexlebens` - **Commit**: `6707b9d` (on `6707b9d3a1d69446b973a92964e3d133340b1561`) - **Charts Updated**: `kube-prometheus-stack` ### Update Details (2026-03-20 00:11 UTC) - **Trigger**: `pull_request` by `@alexlebens` - **Commit**: `3ebc4ad` (on `3ebc4adee9ad6598b9eacc3bce6cb7b400583125`) - **Charts Updated**: `qbittorrent` ### Update Details (2026-03-20 00:13 UTC) - **Trigger**: `pull_request` by `@alexlebens` - **Commit**: `e26e972` (on `e26e97222bfbd75c7b0995ab351bf2771f50f422`) - **Charts Updated**: `prometheus-operator-crds` ### Update Details (2026-03-20 00:22 UTC) - **Trigger**: `pull_request` by `@alexlebens` - **Commit**: `e3670d6` (on `e3670d6f3b5697fae50aae0ca1b619270fb496e9`) - **Charts Updated**: `immich` ### Update Details (2026-03-20 00:28 UTC) - **Trigger**: `workflow_dispatch` by `@alexlebens` - **Commit**: `e3670d6` (on `main`) - **Charts Updated**: `audiobookshelf` Reviewed-on: #4889 Co-authored-by: gitea-bot <gitea-bot@alexlebens.net> Co-committed-by: gitea-bot <gitea-bot@alexlebens.net>
66 lines
2.8 KiB
YAML
66 lines
2.8 KiB
YAML
apiVersion: monitoring.coreos.com/v1
|
|
kind: PrometheusRule
|
|
metadata:
|
|
name: kube-prometheus-stack-general.rules
|
|
namespace: kube-prometheus-stack
|
|
labels:
|
|
app: kube-prometheus-stack
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/instance: kube-prometheus-stack
|
|
app.kubernetes.io/version: "82.12.0"
|
|
app.kubernetes.io/part-of: kube-prometheus-stack
|
|
chart: kube-prometheus-stack-82.12.0
|
|
release: "kube-prometheus-stack"
|
|
heritage: "Helm"
|
|
spec:
|
|
groups:
|
|
- name: general.rules
|
|
rules:
|
|
- alert: TargetDown
|
|
annotations:
|
|
description: '{{ printf "%.4g" $value }}% of the {{ $labels.job }}/{{ $labels.service }} targets in {{ $labels.namespace }} namespace are down.'
|
|
runbook_url: https://runbooks.prometheus-operator.dev/runbooks/general/targetdown
|
|
summary: One or more targets are unreachable.
|
|
expr: 100 * (count(up == 0) BY (cluster, job, namespace, service) / count(up) BY (cluster, job, namespace, service)) > 10
|
|
for: 10m
|
|
labels:
|
|
severity: warning
|
|
- alert: Watchdog
|
|
annotations:
|
|
description: 'This is an alert meant to ensure that the entire alerting pipeline is functional.
|
|
|
|
This alert is always firing, therefore it should always be firing in Alertmanager
|
|
|
|
and always fire against a receiver. There are integrations with various notification
|
|
|
|
mechanisms that send a notification when this alert is not firing. For example the
|
|
|
|
"DeadMansSnitch" integration in PagerDuty.
|
|
|
|
'
|
|
runbook_url: https://runbooks.prometheus-operator.dev/runbooks/general/watchdog
|
|
summary: An alert that should always be firing to certify that Alertmanager is working properly.
|
|
expr: vector(1)
|
|
labels:
|
|
severity: none
|
|
- alert: InfoInhibitor
|
|
annotations:
|
|
description: 'This is an alert that is used to inhibit info alerts.
|
|
|
|
By themselves, the info-level alerts are sometimes very noisy, but they are relevant when combined with
|
|
|
|
other alerts.
|
|
|
|
This alert fires whenever there''s a severity="info" alert, and stops firing when another alert with a
|
|
|
|
severity of ''warning'' or ''critical'' starts firing on the same namespace.
|
|
|
|
This alert should be routed to a null receiver and configured to inhibit alerts with severity="info".
|
|
|
|
'
|
|
runbook_url: https://runbooks.prometheus-operator.dev/runbooks/general/infoinhibitor
|
|
summary: Info-level alert inhibition.
|
|
expr: group by (namespace) (ALERTS{severity = "info"} == 1) unless on (namespace) group by (namespace) (ALERTS{alertname != "InfoInhibitor", alertstate = "firing", severity =~ "warning|critical"} == 1)
|
|
labels:
|
|
severity: none
|