#pAlerts
Dashboard operativa, avvisi e telemetria live
La dashboard operativa (#pOps) mostra in tempo reale e come cronologia di 24 ore: e-mail al minuto in entrata e in uscita, posta differita e respinta, tasso di spam, accessi non riusciti, dimensione della coda ed età del messaggio più vecchio, connessioni attive per protocollo, CPU, memoria, spazio libero su disco, dimensione del database, scadenza dei certificati e nodi del cluster. Gli alert (#pAlerts) segnalano i superamenti delle soglie via e-mail, webhook, SMS, Telegram, Signal o WhatsApp. Gli strumenti esterni leggono gli stessi dati tramite /metrics (Prometheus), OpenTelemetry o il flusso di eventi live (Server-Sent Events).
Al primo avvio nextxch crea cinque regole senza destinazioni (coda bloccata, disco quasi pieno, certificato in scadenza, molti accessi non riusciti, molti bounce). Compaiono nella cronologia; per ricevere notifiche, aggiungere un indirizzo e-mail o un webhook in Destinazioni e selezionarlo nella regola. La cronologia sopravvive ai riavvii (Ops:PersistHistory = false la disattiva).
Flusso di eventi live per strumenti di monitoraggio
Autenticazione come per l'API di amministrazione (chiave API di un amministratore tramite X-Api-Key, Bearer o Basic). Gli amministratori tenant vedono solo il proprio tenant. Filtri: types, direction, status, q; maxRate limita gli eventi al secondo (predefinito 20, max. 200); l'eccedenza viene segnalata in un evento dropped.
curl -N -H "X-Api-Key: $NEXTXCH_KEY" \
"https://mail.company.com/api/admin/telemetry/stream?types=delivery,rejection,auth-failure&maxRate=50"
event: delivery
data: {"at":"2026-11-02T08:15:01Z","direction":"Outbound","status":"Delivered","from":"billing@company.com","to":"customer@example.com","code":250,...}
event: auth-failure
data: {"account":"info@company.com","protocol":"IMAP","remoteIp":"203.0.113.7","reason":"invalid password"}
# Types: delivery, rejection, auth-failure, filter, alert, queue
Impostazioni, valori predefiniti e best practice
| Impostazione / posizione | Descrizione | Valore predefinito | Best practice per la produzione |
|---|---|---|---|
Alarmregel |
Metrica, condizione (>, >=, <, <=), soglia e durata in minuti. L'avviso scatta solo se la condizione persiste per tutto quel tempo senza interruzioni. | 5 min |
Ignorare i picchi brevi: almeno 5 minuti per i tassi (al minuto), 0 minuti per la scadenza dei certificati. |
Abklingzeit, Wiederholung, Entwarnung |
Il cooldown è il tempo minimo tra due messaggi della stessa regola; repeat ricorda finché l'allerta resta attiva; recovery segnala la fine. | 60 min / aus / an |
Mantenere il cooldown a 30 minuti o più, affinché un valore oscillante non continui a generare notifiche. |
Ziele |
E-mail (il mittente è l'amministratore che ha salvato le impostazioni), webhook (JSON con type nextxch.alert, firmato con X-Nextxch-Signature: sha256=...), SMS, Telegram, Signal, WhatsApp tramite i canali in Notifiche. | - |
Aggiungere almeno una destinazione esterna al proprio mail server (SMS, messenger o webhook): se il recapito non funziona, una e-mail di alert non arriverà. |
Messwerte in Prometheus und OpenTelemetry |
Ogni valore della dashboard è disponibile su /metrics: nextxch_mail_inbound_total, nextxch_mail_outbound_total, nextxch_mail_deferred_total, nextxch_mail_bounced_total, nextxch_mail_rejected_total, nextxch_mail_spam_total, nextxch_auth_failures_total, nextxch_mail_spam_rate_percent, nextxch_queue_messages, nextxch_queue_deferred_messages, nextxch_queue_oldest_age_minutes, nextxch_connections_active{protocol}, nextxch_process_cpu_percent, nextxch_process_working_set_bytes, nextxch_disk_free_percent, nextxch_disk_free_bytes, nextxch_database_size_bytes, nextxch_tls_certificate_min_expiry_days, nextxch_tls_certificate_expiry_days{domain}, nextxch_cluster_nodes_active, nextxch_alerts_firing, nextxch_smtp_filter_verdicts_total{type,verdict}, nextxch_smtp_filter_failures_total. | aktiv |
Tramite OTLP gli strumenti hanno gli stessi nomi, con punti al posto dei trattini bassi (nextxch.mail.inbound); la conversione in Prometheus restituisce di nuovo gli stessi nomi. |