Hi,
I have defined several metrics in Dovecot and activated the metrics service.
After the I tried to include this in Prometheues, but I get strange errors. I
gave up now after several hours in the hope that this might be a bug. So I ask
for help here:
Distribution: Rocky 8
Official Dovecot Repo
Version: 2.3.18
Config for metrics, service and events:
-----------------------------------------------------------------
metric auth_success {
exporter = log
filter = event=auth_request_finished AND success=yes
}
metric auth_failures {
exporter = log
filter = event=auth_request_finished AND NOT success=yes
}
metric auth_client_userdb {
filter = event=auth_client_userdb_lookup_finished
}
metric auth_master {
exporter = log
filter = event=auth_master_client_login_finished
}
metric client_connected {
filter = event=client_connection_connected
}
metric client_disconnected {
filter = event=client_connection_disconnected
group_by = reason
}
metric imap_command {
filter = event=imap_command_finished
group_by = cmd_name tagged_reply_state
}
metric lmtp_command {
filter = event=smtp_server_command_finished AND protocol=lmtp
group_by = cmd_name status_code duration:exponential:1:5:10
}
metric imap_hibernate {
filter = event=imap_client_hibernated
group_by = error
}
metric imap_unhibernate {
filter = event=imap_client_hibernated
group_by = reason error
}
metric mail_delivery {
filter = event=mail_delivery_finished
group_by = duration:exponential:1:5:10
}
metric sql_query {
filter = event=sql_query_finished
group_by = error_code
}
metric sieve_actions {
filter = event=sieve_action_finished
group_by = action_name error
}
metric managesieve {
filter = event=managesieve_command_finished
group_by = script_name
}
metric dict_lookups {
filter = event=dict_lookup_finished
group_by = driver error
}
service stats {
inet_listener http {
port = 9900
}
}
event_exporter log {
format = json
format_args = time-rfc3339
transport = log
}
-----------------------------------------------------------------
Shortened curl output:
-----------------------------------------------------------------
# HELP process_start_time_seconds Timestamp of service start
# TYPE process_start_time_seconds gauge
process_start_time_seconds 1645743604
# HELP dovecot_build Dovecot build information
# TYPE dovecot_build info
dovecot_build_info{version="2.3.18",revision="9dd8408c18"} 1
# HELP dovecot_auth_success Total number of all events of this kind
# TYPE dovecot_auth_success counter
dovecot_auth_success_total 1669
# HELP dovecot_auth_success_duration_seconds Total duration of all events of
this kind
# TYPE dovecot_auth_success_duration_seconds counter
dovecot_auth_success_duration_seconds_total 1.317570
# HELP dovecot_auth_failures Total number of all events of this kind
# TYPE dovecot_auth_failures counter
dovecot_auth_failures_total 1
# HELP dovecot_auth_failures_duration_seconds Total duration of all events of
this kind
# TYPE dovecot_auth_failures_duration_seconds counter
...
# EOF
-----------------------------------------------------------------
Prometheus yml config snippet:
-----------------------------------------------------------------
global:
scrape_interval: 15s
evaluation_interval: 15s
scrape_configs:
- job_name: dovecot_exporter
static_configs:
- targets:
- 172.30.10.1:9900
-----------------------------------------------------------------
Prometheus (Docker stable latest) with debug level show these lines:
-----------------------------------------------------------------
prometheus_1 | ts=2022-02-25T10:22:00.840Z caller=scrape.go:1307 level=debug
component="scrape manager" scrape_pool=dovecot_exporter
target=http://172.30.10.1:9900/metrics msg="Append failed"
err="expected label name or left brace, got \"INVALID\""
-----------------------------------------------------------------
Therefor the service is considered as being down.
I really have no ide, what I can do here.
Thanks for any help in advance
Christian R??ner
--
R??ner-Network-Solutions
Zertifizierter ITSiBe / CISO
Karl-Br?ger-Str. 10, 36304 Alsfeld
Fax: +49 6631 78823409, Mobil: +49 171 9905345
USt-IdNr.: DE225643613, https://roessner.website
PGP fingerprint: 658D 1342 B762 F484 2DDF 1E88 38A5 4346 D727 94E5