Watcher email action
email
アクションを使用して、メール通知を送信します。メールを送信するには、elasticsearch.yml
で 少なくとも1つのメールアカウントを構成する 必要があります。
メール通知はプレーンテキストまたはHTMLを使用してスタイルを設定できます。 テンプレート を使用して、ウォッチ実行ペイロードからの情報を含めることができ、メッセージにウォッチペイロード全体を添付できます。
サポートされている属性については、Email action attributes を参照してください。メールアクション定義に欠けている属性は、メールアカウント構成で検索されます。必要な属性は、メールアクション定義またはアカウントの email_defaults
に設定する必要があります。
Configuring email actions
actions
配列でメールアクションを構成します。アクション固有の属性は、email
キーワードを使用して指定されます。
たとえば、次のメールアクションは、テンプレートを使用してウォッチペイロードからのデータをメール本文に含めます:
Js
"actions" : {
"send_email" : {
"email" : {
"to" : "[email protected]",
"subject" : "Watcher Notification",
"body" : "{{ctx.payload.hits.total}} error logs found"
}
}
}
アクションのID。 | |
アクションタイプは email に設定されています。 |
|
メールを送信するための1つ以上のアドレス。アクション定義またはメールアカウント構成で指定する必要があります。 | |
メールの件名には静的テキストとMustache テンプレート を含めることができます。 | |
メールの本文には静的テキストとMustache テンプレート を含めることができます。アクション定義またはメールアカウント構成で指定する必要があります。 |
Configuring email attachments
実行コンテキストペイロードまたは任意のHTTPサービスからのデータをメール通知に添付できます。構成できる添付ファイルの数に制限はありません。
添付ファイルを構成するには、添付ファイルの名前と添付タイプを指定します: data
、http
または reporting
。data
添付タイプは、実行コンテキストペイロードをメールメッセージに添付します。http
添付タイプを使用すると、HTTPリクエストを発行し、その応答をメールメッセージに添付できます。http
添付タイプを構成する際は、リクエストURLを指定する必要があります。reporting
添付タイプは、KibanaからレンダリングされたPDFダッシュボードを含めるための特別なタイプです。このタイプは、ダッシュボードのレンダリングが完了したかどうかをKibanaアプリに定期的にポーリングし、ファイアウォールやロードバランサーによって中断される可能性のある長時間のHTTP接続を防ぎます。
Js
"actions" : {
"email_admin" : {
"email": {
"to": "John Doe <[email protected]>",
"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"
}
}
}
}
}
}
添付ファイルのID。これはメール添付のファイル名として使用されます。 | |
添付ファイルのタイプとその特定の構成。 | |
添付ファイルを取得するためのURL。 | |
データ添付は、フォーマットを指定しない場合、デフォルトでJSONになります。 |
Table 83. http
添付タイプ属性
| 名前 | 説明 |
| :— | :— |
| content_type
| メール添付のコンテンツタイプを設定します。デフォルトでは、
レスポンスから抽出されます。
HTTPサービスによって送信されます。レスポンスがコンテンツタイプを指定しない場合や、誤って指定されている場合に、正しく設定されるように明示的にコンテンツタイプを指定できます。オプションです。 |
| inline
| inline
で送信される添付ファイルとして構成します。これにより、HTML本文に埋め込まれた画像を使用でき、特定のメールクライアントで表示されます。オプションです。デフォルトは false
です。 |
| request
| HTTPリクエスト属性を含みます。最低限、url
属性を指定して、サービスエンドポイントへのホストとパスを構成する必要があります。完全なHTTPリクエスト属性のリストについては、Webhook action attributes を参照してください。必須です。 |
Table 84. data
添付タイプ属性
| 名前 | 説明 |
| :— | :— |
| format
| ウォッチデータを添付します。これは、ウォッチ構成で attach_data
を指定することに相当します。可能な値は json
または yaml
です。
指定しない場合、デフォルトは json
です。 |
Table 85. reporting
添付タイプ属性
| 名前 | 説明 |
| :— | :— |
| url
| ダッシュボード作成をトリガーするためのURL |
| inline
| inline
で送信される添付ファイルとして構成します。これにより、HTML本文に埋め込まれた画像を使用でき、特定のメールクライアントで表示されます。オプションです。デフォルトは false
です。 |
| retries
| レポート添付タイプは、作成されたPDFを受信するために定期的にポーリングしようとします。これにより、再試行の回数が構成されます。デフォルトは 40
です。
設定 xpack.notification.reporting.retries
は、デフォルトを変更するためにグローバルに構成できます。 |
| interval
| 2回のポーリング試行の間に待機する時間。デフォルトは 15s
です(これは、デフォルトでウォッチャーが10分間ダッシュボードをダウンロードしようとし、40回15秒間待機することを意味します)。設定 xpack.notification.reporting.interval
は、デフォルトを変更するためにグローバルに構成できます。 |
| auth
| リクエストの追加認証構成。詳細については、use watcher を参照してください。 |
| proxy
| リクエストの追加プロキシ構成。値の構成方法については、HTTP input attributes を参照してください。 |
Attaching reports to an email
reporting
添付タイプを email
アクションで使用して、Kibanaレポートを自動的に生成し、メールで配布できます。
Automating report generation を参照してください。
Email action attributes
名前 | 必須 | デフォルト | 説明 |
---|---|---|---|
account |
いいえ | デフォルトアカウント | メールを送信するために使用する メールアカウント 。 |
from |
いいえ | - | メールが送信される アドレス 。from フィールドには、Mustache テンプレート を含めることができ、これは有効なメールアドレスに解決される必要があります。 |
to |
はい | - | to 受信者のメール アドレス 。to フィールドには、Mustache テンプレート を含めることができ、これは有効なメールアドレスに解決される必要があります。 |
cc |
いいえ | - | cc 受信者のメール アドレス 。cc フィールドには、Mustache テンプレート を含めることができ、これは有効なメールアドレスに解決される必要があります。 |
bcc |
いいえ | - | bcc 受信者のメール アドレス 。bcc フィールドには、Mustache テンプレート を含めることができ、これは有効なメールアドレスに解決される必要があります。 |
reply_to |
いいえ | - | メッセージの Reply-To ヘッダーに設定されるメール アドレス 。reply_to フィールドには、Mustache テンプレート を含めることができ、これは有効なメールアドレスに解決される必要があります。 |
subject |
いいえ | - | メールの件名。件名は静的テキストであるか、Mustache テンプレート を含めることができます。 |
body |
いいえ | - | メールの本文。このフィールドが文字列を保持している場合、メールのテキスト本文にデフォルトされます。オブジェクトとして設定して、テキストまたはHTML本文のいずれか、または両方(以下のフィールドを使用)を指定します。 |
body.text |
いいえ | - | メールのプレーンテキスト本文。本文は静的テキストであるか、Mustache テンプレート を含めることができます。 |
body.html |
いいえ | - | メールのHTML本文。本文は静的テキストであるか、Mustache テンプレート を含めることができます。この本文は、スクリプトなどの危険なコンテンツを削除するためにサニタイズされます。この動作は、xpack.notification.email.html.sanitization.enabled: false を設定することで無効にできます。 |
priority |
いいえ | - | このメールの優先度。有効な値は: lowest 、low 、normal 、high および highest です。優先度には、Mustache テンプレート を含めることができ、これは有効な値の1つに解決される必要があります。 |
attachments |
いいえ | - | ウォッチペイロード(data 添付)またはHTTPサービスから取得したファイル(http 添付)をメールに添付します。詳細については、Configuring Email Attachments を参照してください。 |
attach_data |
いいえ | false | ウォッチ実行データをメールに添付する必要があるかどうかを示します。ブール値またはオブジェクトを指定できます。attach_data が true に設定されている場合、データはYAMLファイルとして添付されます。この属性は非推奨です。attachments 属性を使用して、ウォッチペイロードを添付する data 添付を追加します。 |
attach_data.format |
いいえ | yaml | attach_data がオブジェクトとして指定されている場合、このフィールドは添付データのフォーマットを制御します。サポートされているフォーマットは json と yaml です。この属性は非推奨です。attachments 属性を使用して、ウォッチペイロードを添付する data 添付を追加します。 |
- Email Address
メールアドレスは、アドレス自体と、RFC 822 で説明されているオプションの個人名の2つの部分を含むことができます。アドレスは、
[email protected]
またはPersonal Name <[email protected]>
の形式の文字列として表すことができます。メールアドレスを、name
およびaddress
フィールドを含むオブジェクトとして指定することもできます。- Address List
- アドレスのリストは、配列として指定できます:
[ 'Personal Name <[email protected]>', '[email protected]' ]
.
Configuring email accounts
ウォッチャーは、任意のSMTPメールサービスを使用してメールを送信できます。メールメッセージには基本的なHTMLタグを含めることができます。許可されるタグのグループを制御するには、Configuring HTML Sanitization Options を参照してください。
ウォッチャーがメールを送信するために使用できるアカウントを、xpack.notification.email
名前空間の elasticsearch.yml
で構成します。指定されたSMTPユーザーのパスワードは、Elasticsearch keystore に安全に保存されます。
メールアカウントが2段階認証を必要とするように構成されている場合、ウォッチャーからメールを送信するには、ユニークなアプリパスワードを生成して使用する必要があります。プライマリパスワードを使用すると、認証に失敗します。
ウォッチャーは、MIMEメッセージの構造を制御する3つのメールプロファイルを提供します: standard
(デフォルト)、gmail
、および outlook
。これらのプロファイルは、さまざまなメールシステムがMIME標準を解釈する方法の違いに対応しています。GmailまたはOutlookを使用している場合は、対応するプロファイルを使用することをお勧めします。他のメールシステムを使用している場合は、standard
プロファイルを使用してください。
さまざまなメールシステムでウォッチャーを構成する方法についての詳細は、次を参照してください:
- Sending email from Gmail
- Sending email from Outlook.com
- Sending email from Microsoft Exchange
- Sending email from Amazon SES (Simple Email Service)
複数のメールアカウントを構成する場合は、デフォルトアカウントを構成するか、email
アクションでメールを送信するアカウントを指定する必要があります。
Yaml
xpack.notification.email:
default_account: team1
account:
team1:
...
team2:
...
Sending email from Gmail
Gmail SMTPサービスからメールを送信するための以下のメールアカウント設定を使用してください:
Yaml
xpack.notification.email.account:
gmail_account:
profile: gmail
smtp:
auth: true
starttls.enable: true
host: smtp.gmail.com
port: 587
user: <username>
アカウントSMTPパスワードを保存するには、keystoreコマンドを使用します(secure settings を参照)。
Yaml
bin/elasticsearch-keystore add xpack.notification.email.account.gmail_account.smtp.secure_password
ウォッチャーがメールを送信しようとしたときに、Webブラウザからサインインプロセスを続行する必要があることを示す認証エラーが発生した場合、Gmailを構成して Allow Less Secure Apps to access your account を許可する必要があります。
アカウントに2段階認証が有効になっている場合、ウォッチャーからメールを送信するには、ユニークなアプリパスワードを生成して使用する必要があります。詳細については、Sign in using App Passwords を参照してください。
Sending email from Outlook.com
Outlook.com SMTPサービスからメールアクションを送信するための以下のメールアカウント設定を使用してください:
Yaml
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コマンドを使用します(secure settings を参照)。
Yaml
bin/elasticsearch-keystore add xpack.notification.email.account.outlook_account.smtp.secure_password
メールを送信する際には、アカウント構成のデフォルトアドレスまたはウォッチ内のメールアクションの一部として、送信元アドレスを提供する必要があります。
2段階認証が有効になっている場合は、ユニークなアプリパスワードを使用する必要があります。詳細については、App passwords and two-step verification を参照してください。
Sending email from Amazon SES (Simple Email Service)
Amazon Simple Email Service (SES) SMTPサービスからメールを送信するための以下のメールアカウント設定を使用してください:
Yaml
xpack.notification.email.account:
ses_account:
email_defaults:
from: <email address of service account>
smtp:
auth: true
starttls.enable: true
starttls.required: true
host: email-smtp.us-east-1.amazonaws.com
port: 587
user: <username>
特定のケースでは、email_defaults.from がAmazon SESによって検証され、有効なローカルメールアカウントであることが確認されます。 |
|
smtp.host は地域によって異なります。 |
アカウントSMTPパスワードを保存するには、keystoreコマンドを使用します(secure settings を参照)。
Yaml
bin/elasticsearch-keystore add xpack.notification.email.account.ses_account.smtp.secure_password
Amazon SESを通じてメールを送信するには、Amazon SES SMTP資格情報を使用する必要があります。詳細については、Obtaining Your Amazon SES SMTP Credentials を参照してください。また、AWSで your email address または your whole domain を確認する必要がある場合もあります。
Sending email from Microsoft Exchange
Microsoft Exchangeからメールアクションを送信するための以下のメールアカウント設定を使用してください:
Yaml
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>
一部の組織は、from フィールドが有効なローカルメールアカウントであることを検証するようにExchangeを構成します。 |
|
多くの組織は、ユーザー名としてメールアドレスを使用することをサポートしていますが、認証関連の失敗が発生した場合は、システム管理者に確認することをお勧めします。 |
アカウントSMTPパスワードを保存するには、keystoreコマンドを使用します(secure settings を参照)。
Yaml
bin/elasticsearch-keystore add xpack.notification.email.account.exchange_account.smtp.secure_password
Configuring HTML sanitization options
email
アクションは、HTML本文を持つメッセージの送信をサポートしています。ただし、セキュリティ上の理由から、ウォッチャーはHTMLを サニタイズ します。
xpack.notification.email.html.sanitization.allow
および xpack.notification.email.html.sanitization.disallow
設定を elasticsearch.yml
で構成することにより、許可または不許可のHTML機能を制御できます。個々のHTML要素や HTML機能グループ を指定できます。デフォルトでは、ウォッチャーは次の機能を許可します: body
、head
、_tables
、_links
、_blocks
、_formatting
および img:embedded
。
たとえば、次の設定では、HTMLにテーブルやブロック要素を含めることができますが、<h4>
、<h5>
および <h6>
タグは許可されません。
Yaml
xpack.notification.email.html.sanitization:
allow: _tables, _blocks
disallow: h4, h5, h6
サニタイズを完全に無効にするには、elasticsearch.yml
に次の設定を追加します:
Yaml
xpack.notification.email.html.sanitization.enabled: false