Загрузка данных
- name: nexus-common-rules
rules:
- alert: NexusAvailabilityLow
annotations:
summary: "Nexus availability is low."
description: "Nexus pod readiness is below 95% for 3 minutes."
dashboard_url: "{{ .Values.prometheusRules.params.dashboard_url }}"
runbook_url: "{{ .Values.prometheusRules.params.runbook_url }}"
expr: avg(avg_over_time(kube_pod_container_status_ready{namespace="nexus",container="nexus3"}[5m])) < 0.95
for: 3m
labels:
team: sre
service: nexus
component: availability
environment: production
severity: critical
- alert: NexusIngress4xxHigh
annotations:
summary: "Nexus 4xx error ratio is high."
description: "Nexus 4xx ratio is above 2% for 3 minutes."
dashboard_url: "{{ .Values.prometheusRules.params.dashboard_url }}"
runbook_url: "{{ .Values.prometheusRules.params.runbook_url }}"
expr: |-
sum(rate(org_eclipse_jetty_webapp_WebAppContext_4xx_responses_total{namespace="nexus"}[10m]))
/
(
sum(rate(org_eclipse_jetty_webapp_WebAppContext_2xx_responses_total{namespace="nexus"}[10m]))
+
sum(rate(org_eclipse_jetty_webapp_WebAppContext_4xx_responses_total{namespace="nexus"}[10m]))
+
sum(rate(org_eclipse_jetty_webapp_WebAppContext_5xx_responses_total{namespace="nexus"}[10m]))
) > 0.02
for: 3m
labels:
team: sre
service: nexus
component: ingress
environment: production
severity: warning
- alert: NexusIngress4xxCritical
annotations:
summary: "Nexus 4xx error ratio is critical."
description: "Nexus 4xx ratio is above 5% for 3 minutes."
dashboard_url: "{{ .Values.prometheusRules.params.dashboard_url }}"
runbook_url: "{{ .Values.prometheusRules.params.runbook_url }}"
expr: |-
sum(rate(org_eclipse_jetty_webapp_WebAppContext_4xx_responses_total{namespace="nexus"}[10m]))
/
(
sum(rate(org_eclipse_jetty_webapp_WebAppContext_2xx_responses_total{namespace="nexus"}[10m]))
+
sum(rate(org_eclipse_jetty_webapp_WebAppContext_4xx_responses_total{namespace="nexus"}[10m]))
+
sum(rate(org_eclipse_jetty_webapp_WebAppContext_5xx_responses_total{namespace="nexus"}[10m]))
) > 0.05
for: 3m
labels:
team: sre
service: nexus
component: ingress
environment: production
severity: critical
- alert: NexusIngress5xxHigh
annotations:
summary: "Nexus 5xx error ratio is high."
description: "Nexus 5xx ratio is above 2% for 3 minutes."
dashboard_url: "{{ .Values.prometheusRules.params.dashboard_url }}"
runbook_url: "{{ .Values.prometheusRules.params.runbook_url }}"
expr: |-
sum(rate(org_eclipse_jetty_webapp_WebAppContext_5xx_responses_total{namespace="nexus"}[10m]))
/
(
sum(rate(org_eclipse_jetty_webapp_WebAppContext_2xx_responses_total{namespace="nexus"}[10m]))
+
sum(rate(org_eclipse_jetty_webapp_WebAppContext_4xx_responses_total{namespace="nexus"}[10m]))
+
sum(rate(org_eclipse_jetty_webapp_WebAppContext_5xx_responses_total{namespace="nexus"}[10m]))
) > 0.02
for: 3m
labels:
team: sre
service: nexus
component: ingress
environment: production
severity: warning
- alert: NexusIngress5xxCritical
annotations:
summary: "Nexus 5xx error ratio is critical."
description: "Nexus 5xx ratio is above 5% for 3 minutes."
dashboard_url: "{{ .Values.prometheusRules.params.dashboard_url }}"
runbook_url: "{{ .Values.prometheusRules.params.runbook_url }}"
expr: |-
sum(rate(org_eclipse_jetty_webapp_WebAppContext_5xx_responses_total{namespace="nexus"}[10m]))
/
(
sum(rate(org_eclipse_jetty_webapp_WebAppContext_2xx_responses_total{namespace="nexus"}[10m]))
+
sum(rate(org_eclipse_jetty_webapp_WebAppContext_4xx_responses_total{namespace="nexus"}[10m]))
+
sum(rate(org_eclipse_jetty_webapp_WebAppContext_5xx_responses_total{namespace="nexus"}[10m]))
) > 0.05
for: 3m
labels:
team: sre
service: nexus
component: ingress
environment: production
severity: critical
- alert: NexusRegistryLatencyHigh
annotations:
summary: "Nexus repository read latency is high."
description: "Nexus repository read p99 latency is above 3 seconds for 5 minutes."
dashboard_url: "{{ .Values.prometheusRules.params.dashboard_url }}"
runbook_url: "{{ .Values.prometheusRules.params.runbook_url }}"
expr: org_sonatype_nexus_coreui_RepositoryComponent_read_timer{quantile="0.99",namespace="nexus"} > 3
for: 5m
labels:
team: sre
service: nexus
component: registry
environment: production
severity: warning
- alert: NexusRegistryLatencyCritical
annotations:
summary: "Nexus repository read latency is critical."
description: "Nexus repository read p99 latency is above 5 seconds for 3 minutes."
dashboard_url: "{{ .Values.prometheusRules.params.dashboard_url }}"
runbook_url: "{{ .Values.prometheusRules.params.runbook_url }}"
expr: org_sonatype_nexus_coreui_RepositoryComponent_read_timer{quantile="0.99",namespace="nexus"} > 5
for: 3m
labels:
team: sre
service: nexus
component: registry
environment: production
severity: critical
- alert: NexusBlobstoreUnavailable
annotations:
summary: "Nexus blobstore is unavailable."
description: "Nexus default blobstore has no available space."
dashboard_url: "{{ .Values.prometheusRules.params.dashboard_url }}"
runbook_url: "{{ .Values.prometheusRules.params.runbook_url }}"
expr: nexus_blobstores_stats_availableSpaceInBytes{namespace="nexus", name="default"} == 0
for: 1m
labels:
team: sre
service: nexus
component: blobstore
environment: production
severity: critical
- alert: NexusJvmHeapHigh
annotations:
summary: "Nexus JVM heap usage is high."
description: "Nexus JVM heap usage is above 90% for 3 minutes."
dashboard_url: "{{ .Values.prometheusRules.params.dashboard_url }}"
runbook_url: "{{ .Values.prometheusRules.params.runbook_url }}"
expr: |-
sum(jvm_memory_heap_used{namespace="nexus", container="nexus3"}) by(pod)
/
sum(jvm_memory_heap_max{namespace="nexus", container="nexus3"}) by(pod)
> 0.9
for: 3m
labels:
team: sre
service: nexus
component: jvm
environment: production
severity: critical
- alert: NexusCpuThrottlingHigh
annotations:
summary: "Nexus CPU throttling is high."
description: "Nexus CPU throttling ratio is above 20% for 5 minutes."
dashboard_url: "{{ .Values.prometheusRules.params.dashboard_url }}"
runbook_url: "{{ .Values.prometheusRules.params.runbook_url }}"
expr: |-
rate(container_cpu_cfs_throttled_periods_total{namespace="nexus",container="nexus3"}[5m])
/
rate(container_cpu_cfs_periods_total{namespace="nexus",container="nexus3"}[5m])
> 0.2
for: 5m
labels:
team: sre
service: nexus
component: cpu
environment: production
severity: warning