Я использую grafana/grafana:6.1.3
в сочетании с prom/alertmanager:v0.16.2
(и некоторыми другими, на мой взгляд, не относящимися к изображениям).
Я настроил менеджер предупреждений для отправки электронной почты через SMTP, если происходит определенное событие.
Но в моем почтовом ящике ничего не было, поэтому я проверил журнал док-станции grafana:
root@PRIVATE_INFORMATION:~# docker logs grafana | grep -n "alert"
162:t=2019-05-20T11:42:26+0000 lvl=info msg="Executing migration" logger=migrator id="create alert table v1"
[...]
197:t=2019-05-20T11:42:28+0000 lvl=info msg="Executing migration" logger=migrator id="Update alert annotations and set TEXT to empty"
292:t=2019-05-20T11:44:28+0000 lvl=info msg="Request Completed" logger=context userId=0 orgId=0 uname= method=GET path=/api/alerts/states-for-dashboard status=401 remote_addr=PRIVATE_INFORMATION time_ms=0 size=26 referer="PRIVATE_INFORMATION"
297:t=2019-05-20T11:48:01+0000 lvl=info msg="New state change" logger=alerting.resultHandler alertId=1 newState=ok prev state=unknown
298:t=2019-05-20T11:48:33+0000 lvl=info msg="Sending alert notification to" logger=alerting.notifier.email addresses=[PRIVATE@INFORMATION]
299:t=2019-05-20T11:48:33+0000 lvl=eror msg="Failed to send alert notification email" logger=alerting.notifier.email error="SMTP not configured, check your grafana.ini config file's [smtp] section."
300:t=2019-05-20T11:48:33+0000 lvl=eror msg="failed to send notification" logger=alerting.notifier uid= error="SMTP not configured, check your grafana.ini config file's [smtp] section."
[...]
Я не смог найти "grafana.ini" на моем сервере.
{EDIT: я нашел два. Один в "/var/lib/docker/overlay2/fe7[...]db3/diff/etc/grafana/grafana.ini", другой в "/var/lib/docker/overlay2/079[...]26d" /merged/etc/grafana/grafana.ini». Оба содержат одинаковую информацию, например «sample-ini»}
Вместо этого я обнаружил файл «default.ini» и «sample.ini» внутри работающего контейнера grafana. «Default.ini» не содержал ничего, связанного с SMTP, но «sample.ini» содержал следующий раздел:
#################################### SMTP / Emailing ##########################
[smtp]
;enabled = false
;host = localhost:25
;user =
# If the password contains # or ; you have to wrap it with trippel quotes. Ex """#password;"""
;password =
;cert_file =
;key_file =
;skip_verify = false
;from_address = admin@grafana.localhost
;from_name = Grafana
# EHLO identity in SMTP dialog (defaults to instance_name)
;ehlo_identity = dashboard.example.com
[emails]
;welcome_email_on_sign_up = false
Теперь, я думаю, это место, где я должен был настроить SMTP. Кто-нибудь знает, как сказать docker-compose.yml / ansible, что я хочу настроить этот раздел во время настройки контейнера?
Я уже определил хост SMTP и другую информацию в контейнере предупреждений.