Действие Watcher по электронной почте
Используйте действие email для отправки уведомлений по электронной почте. Для отправки электронной почты необходимо настроить как минимум одну учетную запись электронной почты в elasticsearch.yml.
Уведомления по электронной почте могут быть простым текстом или оформлены с помощью HTML. Вы можете включать информацию из полезной нагрузки выполнения наблюдения, используя шаблоны, и прикреплять всю полезную нагрузку наблюдения к сообщению.
См. Атрибуты действия электронной почты для поддерживаемых атрибутов. Любые атрибуты, отсутствующие в определении действия электронной почты, ищутся в конфигурации учетной записи электронной почты. Необходимые атрибуты должны быть либо установлены в определении действия электронной почты, либо в email_defaults учетной записи.
Настройка действий электронной почты
Вы настраиваете действия электронной почты в массиве actions. Атрибуты, относящиеся к действиям, указываются с помощью ключевого слова email.
Например, следующее действие электронной почты использует шаблон для включения данных из полезной нагрузки наблюдения в текст сообщения электронной почты:
"actions" : {
"send_email" : {
"email" : {
"to" : "username@example.org",
"subject" : "Watcher Notification",
"body" : "{{ctx.payload.hits.total}} error logs found"
}
}
} | Идентификатор действия. | |
| Тип действия установлен в | |
| Один или несколько адресов для отправки электронной почты. Должен быть указан в определении действия или в конфигурации учетной записи электронной почты. | |
| Тема сообщения электронной почты может содержать статический текст и шаблоны Mustache шаблоны. | |
| Текст сообщения электронной почты может содержать статический текст и шаблоны Mustache шаблоны. Должен быть указан в определении действия или в конфигурации учетной записи электронной почты. |
Настройка вложений электронной почты
Вы можете прикрепить полезную нагрузку контекста выполнения или данные из любой службы HTTP к уведомлению по электронной почте. Нет ограничений на количество вложений, которые вы можете настроить.
Чтобы настроить вложения, укажите имя прикрепленного файла и тип вложения: data, http или reporting. Тип вложения data прикрепляет полезную нагрузку контекста выполнения к сообщению электронной почты. Тип вложения http позволяет отправлять HTTP-запрос и прикреплять ответ к сообщению электронной почты. При настройке типа вложения http необходимо указать URL-адрес запроса. Тип вложения reporting — это специальный тип для включения панелей мониторинга PDF, отображаемых из Kibana. Этот тип постоянно опрашивает приложение Kibana, если рендеринг панели мониторинга завершен, предотвращая длительные HTTP-подключения, которые могут быть прерваны брандмауэрами или балансировщиками нагрузки.
"actions" : {
"email_admin" : {
"email": {
"to": "John Doe <john.doe@example.com>",
"attachments" : {
"my_image.png" : {
"http" : {
"content_type" : "image/png",
"request" : {
"url": "http://example.org/foo/my-image.png"
}
}
},
"dashboard.pdf" : {
"reporting" : {
"url": "http://example.org:5601/api/reporting/generate/dashboard/Error-Monitoring"
}
},
"data.yml" : {
"data" : {
"format" : "yaml"
}
}
}
}
}
} | Идентификатор вложения, который используется в качестве имени файла во вложении электронной почты. | |
| Тип вложения и его конкретная конфигурация. | |
| URL-адрес, по которому нужно получить вложение. | |
| Вложения данных по умолчанию используют формат JSON, если вы не укажете другой формат. |
Таблица 78. Атрибуты типа вложения http
| Имя | Описание |
|---|---|
| Задает тип содержимого для вложения электронной почты. По умолчанию тип содержимого извлекается из ответа, отправленного службой HTTP. Вы можете явно указать тип содержимого, чтобы убедиться, что тип правильно установлен в электронном письме, если ответ не указывает тип содержимого или он указан неправильно. Необязательно. |
| Настраивается как вложение, отправляемое с распоряжением |
| Содержит атрибуты HTTP-запроса. Как минимум, вы должны указать атрибут |
Таблица 79. Атрибуты типа вложения data
| Имя | Описание |
|---|---|
| Прикрепляет данные наблюдения, что эквивалентно указанию |
Таблица 80. Атрибуты типа вложения reporting
| Имя | Описание |
|---|---|
| URL-адрес для запуска создания панели мониторинга |
| Настраивается как вложение, отправляемое с распоряжением |
| Тип вложения отчета пытается регулярно опрашивать для получения созданного PDF-файла. Это настраивает количество попыток. По умолчанию — |
| Время ожидания между двумя попытками опроса. По умолчанию — |
| Дополнительная конфигурация авторизации для запроса |
| Дополнительная конфигурация прокси для запроса |
Прикрепление отчетов к электронной почте
Вы можете использовать тип вложения reporting в действии email для автоматического создания отчета Kibana и его распространения по электронной почте.
Атрибуты действия электронной почты
| Имя | Обязательно | По умолчанию | Описание |
|---|---|---|---|
| нет | аккаунт по умолчанию | Аккаунт электронной почты, который следует использовать для отправки электронного письма. |
| нет | - | Адрес электронной почты, с которого будет отправлено письмо. Поле |
| да | - | Адреса электронной почты получателей. Поле |
| нет | - | Адреса электронной почты дополнительных получателей. Поле |
| нет | - | Адреса электронной почты дополнительных получателей. Поле |
| нет | - | Адреса электронной почты, которые будут установлены в заголовке сообщения. Поле |
| нет | - | Тема электронного письма. Тема может быть статическим текстом или содержать шаблон Mustache шаблонов. |
| нет | - | Тело электронного письма. Если это строка, она будет по умолчанию текстовым телом. Установите как объект, чтобы указать либо текстовое, либо HTML-тело, или оба (используя поля ниже). |
| нет | - | Текстовое тело электронного письма. Тело может быть статическим текстом или содержать шаблон Mustache шаблонов. |
| нет | - | HTML-тело электронного письма. Тело может быть статическим текстом или содержать шаблон Mustache шаблонов. Это тело будет очищено для удаления опасного контента, такого как скрипты. Это поведение можно отключить, установив |
| нет | - | Приоритет этого электронного письма. Допустимые значения: |
| нет | - | Прикрепляет данные наблюдения (вложение |
| нет | false | Указывает, следует ли прикреплять данные выполнения наблюдения к электронному письму. Можно указать булево значение или объект. Если |
| нет | yaml | Если |
- Адрес электронной почты
- Адрес электронной почты может содержать две части: сам адрес и необязательное имя, как описано в RFC 822. Адрес может быть представлен либо строкой вида
user@host.domain, либоPersonal Name <user@host.domain>. Вы также можете указать адрес электронной почты как объект, содержащий поляnameиaddress.
- Список адресов
- Список адресов может быть указан как массив:
[ 'Personal Name <user1@host.domain>', 'user2@host.domain' ].
Настройка учётных записей электронной почты
Watcher может отправлять электронные письма с помощью любого SMTP-сервиса электронной почты. Электронные письма могут содержать базовые теги HTML. Вы можете контролировать, какие группы тегов разрешены, используя Настройка параметров очистки HTML.
Вы настраиваете учётные записи, которые Watcher может использовать для отправки электронных писем, в пространстве имён xpack.notification.email в elasticsearch.yml. Пароль указанного SMTP-пользователя хранится в защищённом виде в хранилище ключей Elasticsearch.
Если для вашей учётной записи электронной почты требуется двухэтапная проверка подлинности, вам необходимо сгенерировать и использовать уникальный пароль приложения для отправки писем от Watcher. Аутентификация завершится ошибкой, если вы используете свой основной пароль.
Watcher предоставляет три профиля электронной почты, которые управляют тем, как структурируются сообщения MIME: standard (по умолчанию), gmail и outlook. Эти профили учитывают различия в том, как различные почтовые системы интерпретируют стандарт MIME. Если вы используете Gmail или Outlook, мы рекомендуем использовать соответствующий профиль. Используйте профиль standard, если вы используете другую почтовую систему.
Для получения дополнительной информации о настройке Watcher для работы с различными почтовыми системами см.:
Если вы настраиваете несколько учётных записей электронной почты, вы должны либо настроить учётную запись по умолчанию, либо указать, с какой учётной записью должно отправляться письмо, в действии email.
xpack.notification.email:
default_account: team1
account:
team1:
...
team2:
... Отправка писем из Gmail
Используйте следующие настройки учётной записи электронной почты для отправки писем с помощью SMTP-сервиса Gmail:
xpack.notification.email.account:
gmail_account:
profile: gmail
smtp:
auth: true
starttls.enable: true
host: smtp.gmail.com
port: 587
user: <username> Для хранения пароля SMTP учётной записи используйте команду keystore (см. защищённые настройки)
bin/elasticsearch-keystore add xpack.notification.email.account.gmail_account.smtp.secure_password
Если при попытке отправки письма Watcher возникает ошибка аутентификации, указывающая на необходимость продолжения процесса входа с веб-браузера, вам необходимо настроить Gmail на разрешение менее безопасным приложениям доступ к вашей учётной записи.
Если для вашей учётной записи включена двухэтапная проверка, вы должны сгенерировать и использовать уникальный пароль приложения для отправки электронных писем от Watcher. Дополнительную информацию см. в разделе Вход с помощью паролей приложений.
Отправка писем из Outlook.com
Используйте следующие настройки учётной записи электронной почты для отправки писем с помощью SMTP-сервиса Outlook.com:
xpack.notification.email.account:
outlook_account:
profile: outlook
smtp:
auth: true
starttls.enable: true
host: smtp-mail.outlook.com
port: 587
user: <email.address> Для хранения пароля SMTP учётной записи используйте команду keystore (см. защищённые настройки)
bin/elasticsearch-keystore add xpack.notification.email.account.outlook_account.smtp.secure_password
При отправке писем необходимо указать адрес отправителя, либо по умолчанию в настройках учётной записи, либо в рамках действия электронной почты в мониторинге.
При включённой двухэтапной проверке необходимо использовать уникальный пароль приложения. Дополнительную информацию см. в разделе Пароли приложений и двухэтапная проверка.
Отправка писем из Amazon SES (Simple Email Service)
Используйте следующие настройки учётной записи электронной почты для отправки писем с помощью SMTP-сервиса Amazon Simple Email Service (SES):
xpack.notification.email.account:
ses_account:
smtp:
auth: true
starttls.enable: true
starttls.required: true
host: email-smtp.us-east-1.amazonaws.com
port: 587
user: <username> |
|
Для хранения пароля SMTP учётной записи используйте команду keystore (см. защищённые настройки)
bin/elasticsearch-keystore add xpack.notification.email.account.ses_account.smtp.secure_password
Для отправки писем через Amazon SES необходимо использовать ваши учетные данные SMTP Amazon SES. Дополнительную информацию см. в разделе Получение учетных данных SMTP Amazon SES. Возможно, также потребуется проверить ваш адрес электронной почты или весь ваш домен в AWS.
Отправка писем из Microsoft Exchange
Используйте следующие настройки учётной записи электронной почты для отправки писем из Microsoft Exchange:
xpack.notification.email.account:
exchange_account:
profile: outlook
email_defaults:
from: <email address of service account>
smtp:
auth: true
starttls.enable: true
host: <your exchange server>
port: 587
user: <email address of service account> | Некоторые организации настраивают Exchange для проверки того, что поле | |
| Во многих организациях поддерживается использование вашего адреса электронной почты в качестве имени пользователя, хотя рекомендуется проверить у системного администратора, если вы получите ошибки, связанные с аутентификацией. |
Для хранения пароля SMTP учётной записи используйте команду keystore (см. защищённые настройки)
bin/elasticsearch-keystore add xpack.notification.email.account.exchange_account.smtp.secure_password
Настройка параметров очистки HTML
Действие email поддерживает отправку сообщений с HTML-телом. Однако по соображениям безопасности Watcher очищает HTML.
Вы можете контролировать, какие функции HTML разрешены или запрещены, настроив параметры xpack.notification.email.html.sanitization.allow и xpack.notification.email.html.sanitization.disallow в elasticsearch.yml. Вы можете указать отдельные HTML-элементы и группы функций HTML. По умолчанию Watcher разрешает следующие функции: body, head, _tables, _links, _blocks, _formatting и img:embedded.
Например, следующие настройки позволяют HTML содержать таблицы и блочные элементы, но запрещают теги <h4>, <h5> и <h6>.
xpack.notification.email.html.sanitization:
allow: _tables, _blocks
disallow: h4, h5, h6 Чтобы полностью отключить очистку, добавьте следующую настройку в elasticsearch.yml:
xpack.notification.email.html.sanitization.enabled: false
© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/7.17/actions-email.html