autoscript/templates/monitoring/alerts.yml
Paweł Orzech ee90c4b52d Wprowadzenie modularności i kompleksowa rozbudowa skryptu (v2.0)
1 Przeprowadzono gruntowną refaktoryzację i rozbudowę skryptu, przekształcając go w modularne i w pełni funkcjonalne narzędzie do
      zarządzania cyklem życia serwera.
    2
    3 Kluczowe zmiany w tej wersji (v2.0):
    4
    5 - **Modularna architektura**: Skrypt obsługuje teraz komendy (np. `install`, `uninstall`, `deploy_monitoring`), co pozwala na
      elastyczne zarządzanie poszczególnymi komponentami bez potrzeby uruchamiania całości.
    6
    7 - **Idempotentność**: Wszystkie operacje sprawdzają stan systemu przed wykonaniem, co gwarantuje bezpieczeństwo i
      przewidywalność przy wielokrotnym uruchamianiu.
    8
    9 - **Separacja konfiguracji**: Konfiguracje usług (Docker Compose, Prometheus itp.) zostały przeniesione do folderu `templates/`,
      oddzielając logikę skryptu od danych konfiguracyjnych.
   10
   11 - **Nowe moduły opcjonalne**: Dodano możliwość łatwej instalacji i konfiguracji:
   12   - `Fail2ban` dla dodatkowego bezpieczeństwa.
   13   - Bazy danych `PostgreSQL`.
   14   - Systemu agregacji logów `Loki`.
   15   - Systemu kopii zapasowych `Restic`.
   16
   17 - **Ulepszone logowanie i bezpieczeństwo**: Skrypt weryfikuje kompatybilność OS, a wszystkie jego działania są logowane do pliku
      `/var/log/autoscript.log`.
   18
   19 - **Funkcja `uninstall`**: Dodano możliwość czystego i bezpiecznego usunięcia wszystkich komponentów wdrożonych przez skrypt.
   20
   21 - **Aktualizacja dokumentacji**: `README.md` i `CHANGELOG.md` zostały w pełni zaktualizowane, aby odzwierciedlać nową
      funkcjonalność.
   22
   23 Ta wersja stanowi kamień milowy w rozwoju projektu, czyniąc go potężnym i niezawodnym narzędziem dla administratorów.
2025-08-03 12:43:29 +02:00

30 lines
1.2 KiB
YAML

groups:
- name: general.rules
rules:
- alert: InstanceDown
expr: up == 0
for: 2m
labels: { severity: critical }
annotations:
summary: "Instance {{ $labels.instance }} down"
description: "{{ $labels.instance }} of job {{ $labels.job }} down >2m"
- alert: HighCPUUsage
expr: 100 - (avg by(instance)(rate(node_cpu_seconds_total{mode="idle"}[5m]))*100) > 80
for: 5m
labels: { severity: warning }
annotations: { summary: "High CPU {{ $labels.instance }}" }
- alert: HighMemoryUsage
expr: (node_memory_MemTotal_bytes - node_memory_MemAvailable_bytes)/node_memory_MemTotal_bytes*100 > 90
for: 5m
labels: { severity: warning }
annotations: { summary: "High memory {{ $labels.instance }}" }
- alert: DiskSpaceLow
expr: (node_filesystem_avail_bytes{fstype!~"tmpfs|overlay"}/node_filesystem_size_bytes) < 0.1
for: 10m
labels: { severity: warning }
annotations: { summary: "Low disk {{ $labels.instance }}" }
- alert: CertificateExpiration
expr: probe_ssl_earliest_cert_expiry - time() < 604800
for: 0m
labels: { severity: warning }
annotations: { summary: "Cert expires soon {{ $labels.instance }}" }