groups: - name: system-alerts rules: # ⚠️ CẢNH BÁO: CPU cao - alert: HighCPUUsage expr: 100 - (avg by (instance) (irate(node_cpu_seconds_total{mode="idle"}[1m])) * 100) > 80 for: 1m labels: severity: warning annotations: summary: "⚠️ CẢNH BÁO: CPU cao trên {{ $labels.instance }}" description: | 💥 Máy chủ: {{ $labels.instance }} 🔥 CPU đã vượt ngưỡng 80% trong hơn 1 phút 📊 Giá trị hiện tại: {{ $value | printf "%.2f" }}% # 💾 CẢNH BÁO: RAM cao - alert: HighMemoryUsage expr: (1 - (node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes)) * 100 > 80 for: 1m labels: severity: warning annotations: summary: "⚠️ RAM cao trên {{ $labels.instance }}" description: | 💾 Bộ nhớ sử dụng vượt 80% 📊 Hiện tại: {{ $value | printf "%.2f" }}% # 💽 CẢNH BÁO: Ổ đĩa sắp đầy - alert: HighDiskUsage expr: (1 - (node_filesystem_avail_bytes{fstype!~"tmpfs|overlay"} / node_filesystem_size_bytes{fstype!~"tmpfs|overlay"})) * 100 > 80 for: 1m labels: severity: warning annotations: summary: "⚠️ Dung lượng ổ đĩa sắp đầy trên {{ $labels.instance }} ({{ $labels.mountpoint }})" description: | 📂 Mount: {{ $labels.mountpoint }} 💽 Đã sử dụng > 80% 📊 Hiện tại: {{ $value | printf "%.2f" }}% # 🛑 CẢNH BÁO: Container dừng - alert: ContainerStopped expr: time() - container_last_seen > 60 for: 1m labels: severity: critical annotations: summary: "🛑 Container dừng: {{ $labels.name }}" description: | Container {{ $labels.name }} không hoạt động trong hơn 1 phút. # ❌ CẢNH BÁO: Docker daemon không hoạt động - alert: DockerDaemonDown expr: absent(container_memory_usage_bytes) for: 1m labels: severity: critical annotations: summary: "🛑 Docker daemon không hoạt động" description: | Không có metric container nào được phát hiện từ cadvisor hoặc exporter trong hơn 1 phút. # 🔥 CẢNH BÁO: HTTP 5xx nhiều - alert: HTTP5xxRateHigh expr: rate(http_requests_total{status=~"5.."}[1m]) > 1 for: 1m labels: severity: warning annotations: summary: "🔥 HTTP 5xx cao trên {{ $labels.instance }}" description: | Ứng dụng đang trả nhiều lỗi HTTP 5xx 📊 Tỷ lệ lỗi hiện tại: {{ $value | printf "%.2f" }} req/s