[PowerMTA Server] │ ├── pmta show stats ──cron──► Custom Python ──► InfluxDB │ ├── /var/log/pmta/*.log ──► Filebeat ──► Elasticsearch ──► Kibana (for log search) │ ├── HTTP JSON endpoint (:8080) ◄── Prometheus (scrape every 15s) │ └── SNMP ◄── Zabbix (for legacy integration)
Prometheus ──► Grafana (dashboards) ──► Alertmanager ──► Slack/Email
This command is your best friend. Run it periodically and parse the output. Example: powermta monitoring
pmta show queue --domain gmail.com
Watch for retry intervals climbing unexpectedly.
A queue empties quickly, but DSNs (Delivery Status Notifications) from remote ISPs take hours. Monitor not just sends, but final disposition. This command is your best friend
You cannot monitor everything. Focus on the following key performance indicators (KPIs).
Monitoring is useless without alerting. You need to know there is a problem before your clients complain. Watch for retry intervals climbing unexpectedly
PowerMTA does not natively export Prometheus metrics, but you can build an exporter.