SNMP Parameters
Axigen exposes a number of SNMP parameters, monitored by the reporting service, through a dedicated MIB file.
Prometheus Exporter
Starting with X3 Update 2 (10.3.2), Axigen also includes a dedicated HTTP endpoint used for exporting data in Prometheus format.
Provided that the Reporting service is up and running, the Prometheus endpoint is available at https://<your-webadmin-url>/metrics
. It requires basic HTTP authentication using a reporting enabled admin account.
Metrics
The metrics exposed by Axigen are available both as SNMP values and as Prometheus metrics. Some are global (server-wide), some are per service or grouped in other fashion (i.e. per domain, per filter, etc).
Global / Server-wide Counters
Prometheus metric |
SNMP |
Type |
Description |
---|---|---|---|
|
|
Gauge |
Number of messages in the server queue |
|
|
Gauge |
1 minute system Load Average |
|
N/A |
Counter |
System uptime in seconds |
|
|
Gauge |
Total number of accounts |
Note: the users_count
metric (introduced from Axigen version 10.4.0) has multiple instances, one without label (total number of accounts in the server) and the other having the label domain=<domainname>
, providing the number of accounts each domain on the server.
Filter Metrics
The measurement unit for all the filter specific metrics is message. Each metric counts messages for per outcome (e.g. total messages through the filter, total messages without error through the filter, etc).
For SNMP, the OID provided in the table below is relative to Axigen’s OID (1.3.6.1.4.1.29463
). Filter metrics are found in the .2
relative OID. Since each filter is represented by an index in the MIB, 1.3.6.1.4.1.29463.2.N
. The .1
and .2
entries represent the Axigen internal filter index and the filter’s name.
For Prometheus, a label is added to each metric with the filter name (filter_name=<filter_name>
); all filter metrics described below are labeled (i.e. there will be none without a label).
Prometheus metric |
SNMP OID |
Description |
---|---|---|
N/A |
|
Filter index (SNMP only) |
N/A |
|
Filter name (SNMP only) |
|
|
Messages through the filter |
|
|
Without error |
|
|
Triggering the filter |
|
|
Messages causing errors |
|
|
Messages checked and passed |
|
|
Messages checked and discarded |
|
|
Messages deemed spam |
|
|
Messages deemed virus |
Service Metrics
The metrics for the services are further split into two categories: metrics that are available for all the services and metrics that are specific to some services. They will be listed separately
In Prometheus, service metrics (both all service and service specific) are labeled the with the service=<service_name>
label.
In SNMP, service metrics are found under the OID 1.3.6.1.4.1.29463.1
; in the tables below, the relative OID will be provided.
All Services
The table below lists the metrics available for all the services.
Prometheus metric |
Prometheus “service” label |
SNMP OID |
---|---|---|
|
smtpin |
|
|
smtpout |
|
|
imap |
|
|
pop |
|
|
webmail |
|
|
proxyimap |
|
|
proxypop3 |
|
|
proxywebmail |
|
|
smtpin |
|
|
smtpin |
|
|
imap |
|
|
pop |
|
|
webmail |
|
|
proxyimap |
|
|
proxypop3 |
|
|
proxywebmail |
|
|
smtpin |
|
|
imap |
|
|
pop |
|
|
webmail |
|
|
proxyimap |
|
|
proxypop3 |
|
|
proxywebmail |
|
In Prometheus, if the Enable Domain Collecting option is enabled, an additional instance of the succeeded_authentication
metric with an extra label, domain=<domainname>
exists to allow more granular filtering for all except the proxy services.
Service Specific
The below metrics are specific to each service and are listed as such.
In Prometheus, since the metric name itself includes the service name, there is no service
label attached. However, for each metric, if the Enable Domain Collecting option is enabled, multiple instance exist; one without a label (counting totals per service) and one with a domain=<domainname>
label which provides the count for a specific domain.
SMTPOUT
Prometheus metric |
SNMP OID |
---|---|
|
|
|
|
SMTPIN
Prometheus metric |
SNMP OID |
---|---|
|
|
|
|
IMAP
Prometheus metric |
SNMP OID |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
POP3
Prometheus metric |
SNMP OID |
---|---|
|
|
|
|
WEBMAIL
Prometheus metric |
SNMP OID |
---|---|
|
|
|
|
Storage Metrics
This category of metrics relates to sizes in the server storage and are used to monitor the storage usage. There are three types of Axigen storage files:
-
domain
-
object
-
messages
They will be described separately below.
For Prometheus, all metrics include a domain=<domainname>
label, and a type<domain|object|message>
label to identify the storage type the metric refers to.
The storage_path
, max_file_count
, and max_file_size
are actually Axigen configuration parameters and are provided in order to assist with decorating the reports.
Domain Storage
Prometheus metric |
Prometheus “type” label |
OID |
---|---|---|
|
“domain” |
|
|
“domain” |
|
|
“domain” |
|
|
“domain” |
|
|
“domain” |
|
Object Storage
Prometheus metric |
Prometheus “type” label |
OID |
---|---|---|
|
“object” |
|
|
“object” |
|
|
“object” |
|
|
“object” |
|
|
“object” |
|
Message Storage
While, for each domain, a single domain and object storage instance exists, multiple message storages are allowed, thus an index=<storage-index>
label is added tot he prometheus metrics.
For SNMP, an element of the OID (N
in the table below) identifies the storage index
Prometheus metric |
Prometheus “type” label |
OID |
---|---|---|
N/A |
N/A |
|
|
“message” |
|
|
“message” |
|
|
“message” |
|
|
“message” |
|
|
“message” |
|
The .3.1.5.3.Y.1
OID is the storage index, provided as label in Prometheus.
For more details about leveraging the Prometheus exported, here’s a more detailed tutorial on how to monitor Axigen with Prometheus and Grafana.