Přeskočit obsah

Monitorování

Metriky Prometheus, upozornění a dashboardy

Verze dokumentu: 1.0.0
Poslední aktualizace: 2026-02-10


1. Endpointy metrik

Komponenta Endpoint Formát
API Server /metrics (port 8080) Prometheus
OCSP Responder /metrics (port 8081) Prometheus

2. Klíčové metriky

Metriky API Serveru

Metrika Typ Popis
http_requests_total Counter Celkový počet HTTP požadavků (štítky: method, path, status)
http_request_duration_seconds Histogram Doba trvání požadavku (štítky: method, path)
http_requests_in_flight Gauge Aktuálně zpracovávané požadavky
mazevault_secrets_total Gauge Celkový počet tajemství
mazevault_certificates_total Gauge Celkový počet certifikátů
mazevault_certificates_expiring Gauge Certifikáty s expirací do 30 dnů
mazevault_agents_online Gauge Aktuálně online agenti
mazevault_sync_operations_total Counter Synchronizační operace (štítky: status)
mazevault_rotation_operations_total Counter Rotační operace (štítky: status)
mazevault_auth_attempts_total Counter Pokusy o autentizaci (štítky: method, result)
mazevault_license_days_remaining Gauge Dny do vypršení licence

Metriky OCSP Responderu

Metrika Typ Popis
ocsp_requests_total Counter Celkový počet OCSP požadavků (štítky: status)
ocsp_request_duration_seconds Histogram Doba odezvy OCSP
ocsp_cache_hits_total Counter Zásahy cache odpovědí
ocsp_cache_misses_total Counter Minutí cache odpovědí

Metriky databáze

Metrika Typ Popis
db_connections_active Gauge Aktivní připojení k databázi
db_connections_idle Gauge Nečinná připojení k databázi
db_query_duration_seconds Histogram Latence databázových dotazů

3. Prahy upozornění

Doporučená pravidla upozornění

Upozornění Podmínka Závažnost Akce
API Server nedostupný up{job="mazevault-backend"} == 0 po dobu 5 min Kritická Okamžité prošetření
Vysoká chybovost rate(http_requests_total{status=~"5.."}[5m]) > 0.1 po dobu 10 min Varování Prošetřit chybové logy
Vysoká latence API http_request_duration_seconds{quantile="0.95"} > 2 po dobu 5 min Varování Zkontrolovat DB a Redis
Kritická latence API http_request_duration_seconds{quantile="0.95"} > 5 po dobu 5 min Kritická Okamžité prošetření
Certifikát brzy vyprší mazevault_certificates_expiring > 0 Varování Obnovit certifikáty
Licence brzy vyprší (60 dní) mazevault_license_days_remaining < 60 Varování Kontaktujte MazeVault pro obnovení
Licence brzy vyprší (14 dní) mazevault_license_days_remaining < 14 Kritická Nutné urgentní obnovení
OCSP nedostupný up{job="mazevault-ocsp"} == 0 po dobu 5 min Kritická Restartovat OCSP responder
Vysoký počet DB připojení db_connections_active > 80 Varování Zkontrolovat nastavení connection poolu
Vysoké využití disku node_filesystem_avail_bytes / node_filesystem_size_bytes < 0.2 Varování Vyčistit nebo rozšířit úložiště
Kritické využití disku node_filesystem_avail_bytes / node_filesystem_size_bytes < 0.05 Kritická Okamžité rozšíření úložiště

Pravidla upozornění Prometheus

groups:
  - name: mazevault
    rules:
      - alert: MazeVaultBackendDown
        expr: up{job="mazevault-backend"} == 0
        for: 5m
        labels:
          severity: critical
        annotations:
          summary: "MazeVault API Server is down"
          description: "API Server has been unreachable for 5 minutes"

      - alert: MazeVaultHighErrorRate
        expr: |
          rate(http_requests_total{job="mazevault-backend", status=~"5.."}[5m])
          / rate(http_requests_total{job="mazevault-backend"}[5m]) > 0.05
        for: 10m
        labels:
          severity: warning
        annotations:
          summary: "High error rate on MazeVault API"
          description: "Error rate exceeds 5% for 10 minutes"

      - alert: MazeVaultLicenseExpiring
        expr: mazevault_license_days_remaining < 60
        labels:
          severity: warning
        annotations:
          summary: "MazeVault license expiring soon"
          description: "License expires in {{ $value }} days"

      - alert: MazeVaultCertificateExpiring
        expr: mazevault_certificates_expiring > 0
        labels:
          severity: warning
        annotations:
          summary: "Certificates expiring within 30 days"
          description: "{{ $value }} certificates are expiring soon"

4. Grafana Dashboard

Doporučené panely

Panel Vizualizace Dotaz
Rychlost API požadavků Časová řada rate(http_requests_total[5m])
Chybovost API Časová řada rate(http_requests_total{status=~"5.."}[5m])
Latence API (p95) Časová řada histogram_quantile(0.95, rate(http_request_duration_seconds_bucket[5m]))
Aktivní tajemství Statistika mazevault_secrets_total
Aktivní certifikáty Statistika mazevault_certificates_total
Certifikáty s blížící se expirací Statistika (červená) mazevault_certificates_expiring
Online agenti Statistika mazevault_agents_online
Zbývající dny licence Gauge mazevault_license_days_remaining
Rychlost OCSP požadavků Časová řada rate(ocsp_requests_total[5m])
Poměr zásahů OCSP cache Gauge rate(ocsp_cache_hits_total[5m]) / (rate(ocsp_cache_hits_total[5m]) + rate(ocsp_cache_misses_total[5m]))
DB připojení Časová řada db_connections_active
Neúspěšné autentizace Časová řada rate(mazevault_auth_attempts_total{result="failure"}[5m])

5. Agregace logů

Strukturované logování

Všechny komponenty MazeVault produkují strukturované JSON logy:

{
  "time": "2026-02-10T14:30:00.000Z",
  "level": "info",
  "msg": "Request completed",
  "method": "GET",
  "path": "/api/v1/secrets",
  "status": 200,
  "duration_ms": 12,
  "request_id": "req_abc123",
  "user_id": "usr_def456"
}

Úrovně logování

Úroveň Popis Kdy použít
error Operace selhala Okamžité prošetření
warn Neočekávané, ale obnovitelné Sledovat trendy
info Běžný provoz Audit a ladění
debug Podrobná diagnostika Vývoj / dočasné řešení problémů

Doporučený sběr logů

Platforma Doporučený nástroj
Kubernetes Fluentd / Fluent Bit → Elasticsearch / Loki
On-Premise Filebeat → Elasticsearch / Splunk
Azure Azure Monitor / Log Analytics

Související