Spotfire 14.5より新規追加された、Automation Services / Scheduled Updates の実行結果(成功、失敗)をメールやHTTPで通知する機能の使い方を紹介します。
概要
実行結果の通知は下表の通りに行います。HTTP通知の場合は実行結果のJSON文字列がPOSTで送信されます。
| 製品 | 通知条件 | 通知先 | 説明 |
|---|---|---|---|
| Automation Services | successful |
・メール ・HTTP |
成功した場合に通知 |
| failed | 失敗した場合に通知 | ||
| all | すべてを通知 | ||
| Scheduled Updates | successful | 成功した場合に通知 | |
| failed | 失敗した場合に通知 | ||
| all | すべてを通知 |
また、メールやHTTP通知のいずれも、Spotfire Serverから送信されます。
動作確認環境
- Spotfire Server 14.6.2 LTS
- Spotfire Web Player 14.6.2 LTS
- Spotfire Automation Servcies 14.6.2 LTS
本機能はバージョン 14.5 にて新規追加されたものです。
使い方
Automation Services / Scheduled Updates の実行結果(成功、失敗)をメールやHTTPで通知するには、以下の手順でSpotfire Serverの設定変更で構成します。
- メール通知を設定
- HTTP通知を設定
- Automation Services 実行結果の通知を指定
- Scheduled Updates 実行結果の通知を指定
設定変更手順は「Spotfire Server設定変更手順」の「Spotfire Server設定変更手順(コマンドライン使用)」部分を参考に実施してください。本記事内のすべてのコマンドは、こちらの手順のステップ3.の代わりとして実行してください。
1. メール通知の設定
メール通知を利用するには、事前にメール送信サーバー等を設定する必要があります。
コマンドの例は以下の通りです。
config.bat config-email-notification -n "spotfire admin" -e true ^
-u "username@mymail.com" -p "mypassword" -Xmail.smtp.auth=true ^
-Xmail.smtp.host=smtp.myserver.com -Xmail.smtp.ssl.trust=smtp.myserver.com ^
-Xmail.smtp.port=465 -Xmail.smtp.socketFactory.port=465 ^
-Xmail.smtp.socketFactory.class=javax.net.ssl.SSLSocketFactory ^
-Xmail.smtp.socketFactory.fallback=false -Xmail.smtp.ssl.protocols=TLSv1.2 ^
-v trueコマンドの引数の詳細について「config-email-notification」をご参照ください。
2.HTTP通知の設定
HTTP通知を利用するには、事前に送信先HTTPサーバーのURL等を設定する必要があります。
送信先HTTPサーバーに認証が必要な場合は基本認証、OAuth2認証に対応していますが、本記事では設定手順は省略します。
下記は認証不要(-a NOAUTH)のサーバーURLを設定する例です。
config.bat config-http-notification -e true -a NOAUTH -h http://my-server:8080コマンドの引数の詳細について「config-http-notification」をご参照ください。
3.Automation Services 実行結果の通知
Automation Servicesジョブの実行結果をメール/HTTPで通知するように設定します。
実行結果の成功・失敗・すべて(-t successful / -t failed / -t all)毎に異なるメールアドレスへ送信するように設定することが可能です。
引数「-A<mail-address>」を複数個指定して同時に複数のメールアドレスへ送信するように設定することも可能です。
config.bat add-notification-preference -s automation-services -t successful -Auser1@mymail.com
config.bat add-notification-preference -s automation-services -t failed -Auser2@mymail.com
config.bat add-notification-preference -s automation-services -t all -Auser3@mymail.com -Auser4@mymail.comコマンドの引数の詳細について「add-notification-preference」をご参照ください。
上記の2.でHTTP通知を構成した場合はメール通知と共にHTTP通知も送信されます。
4.Scheduled Updates 実行結果の通知
Scheduled Updates の実行結果をメール/HTTPで通知するように設定します。
実行結果の成功・失敗・すべて(-t successful / -t failed / -t all)毎に異なるメールアドレスへ送信するように設定することが可能です。
引数「-A<mail-address>」を複数個指定して同時に複数のメールアドレスへ送信するように設定することも可能です。
config.bat add-notification-preference -s scheduled-updates -t successful -Auser1@mymail.com
config.bat add-notification-preference -s scheduled-updates -t failed -Auser2@mymail.com
config.bat add-notification-preference -s scheduled-updates -t all -Auser3@mymail.com -Auser4@mymail.comコマンドの引数の詳細について「add-notification-preference」をご参照ください。
上記の2.でHTTP通知を構成した場合はメール通知と共にHTTP通知も送信されます。
注意事項として、Scheduled Updates 実行が失敗した場合、デフォルト設定では1分間隔で10回ほどリトライされますが、リトライ時にも通知が送信されます。
リトライ回数は以下のようにコマンド「config-scheduled-updates-retries」で変更できます。
引数「--fails-before-stop=3」ではリトライ回数を 3 に設定しています。
config.bat config-scheduled-updates-retries --stop-updates-after-repeated-fail-enabled=true --fails-before-stop=3
通知の停止
実行結果の通知を停止したい場合は必要に応じて以下のいずれかのコマンドで実施してください。
Automation Services 実行結果のメール/HTTP通知を停止します。
config.bat remove-notification-preference -s automation-services
Scheduled Updates 実行結果のメール/HTTP通知を停止します。
config.bat remove-notification-preference -s scheduled-updates
すべてのメール通知を停止します。
config.bat config-email-notification -e false -Xdummy=dummy必須となる引数「-X」にはダミーを指定しています。
すべてのHTTP通知を停止します。
config.bat config-http-notification -e false -a NOAUTH -h dummy必須となる引数「-h」にはダミーを指定しています。
通知の例
Automation Services
実行成功時の通知メールの例は以下です。
注意事項として、「Executed at」(実行開始時間)には常にUTC時間が記載されています。
実行成功時のHTTP通知のJSON文字列の例(上記のメール通知とは同一実行)は以下です。
{
"metadata": { "version": 1 },
"data": {
"jobLink": "https://winx/spotfire/ui/automationServices/edit?action=edit&id=c0d65bc1-9115-445a-9066-4108a56541a1",
"libItemId": "e3148378-0f53-4f1a-bac4-1787987b53cc",
"name": "Sales and Marketing",
"activityLink": "https://winx/spotfire/ui/automationServices/jobActivity?libraryItemId=e3148378-0f53-4f1a-bac4-1787987b53cc",
"details": "実行時間: 00:00:00",
"source": "Automation Services",
"epochMillis": 1776753916655,
"time": "2026-04-21T06:45Z",
"routingRuleId": "c0d65bc1-9115-445a-9066-4108a56541a1",
"status": "SUCCESSFUL"
}
}
実行失敗時の通知メールの例は以下です。
実行失敗時のHTTP通知のJSON文字列の例(上記のメール通知とは同一実行)は以下です。
{
"metadata": { "version": 1 },
"data": {
"jobLink": "https://winx/spotfire/ui/automationServices/edit?action=edit&id=a0378292-6072-474a-a136-e1ed709d67c8",
"libItemId": "9a983bc6-aad1-4495-b99a-7477178d0d43",
"name": "オフィス用品_2007年",
"activityLink": "https://winx/spotfire/ui/automationServices/jobActivity?libraryItemId=9a983bc6-aad1-4495-b99a-7477178d0d43",
"details": "Error executing task 1 of 1: ライブラリーから分析を開く '/tmp/オフィス用品_2007年'\r\nSpotfire.Dxp.Framework.Library.LibraryException: Import failed ---> Spotfire.Dxp.Data.Exceptions.ImportException: Failed to open data source. ---> System.UnauthorizedAccessException: Cannot access file 'D:\\spotfiredemodata\\オフィス用品_2007年.csv'.\r\n 場所 Spotfire.Dxp.Web.SiteManager.<>c__DisplayClass144_0.<ConfigureFileDataSource>b__0(Object sender, Args args)\r\n 場所 Spotfire.Dxp.Data.Import.FileDataSource.InitializeFilePath(DataSourcePromptMode promptMode, DataLoadSettings loadSettings)\r\n 場所 Spotfire.Dxp.Data.DataSource.ConnectWithoutPrompting(IServiceProvider serviceProvider, DataSourcePromptMode promptMode, Boolean updateInternalState, DataLoadSettings loadSettings)\r\n --- 内部例外スタック トレースの終わり ---\r\n 場所 Spotfire.Dxp.Data.AsyncImport.DataTablesLoader.HandlePromptException(DataException e, DataLoadSettings loadSettings, DataTable dataTable)\r\n 場所 Spotfire.Dxp.Data.AsyncImport.DataTablesLoader.<PerformInitialPrompting>d__9.MoveNext()\r\n 場所 Spotfire.",
"source": "Automation Services",
"epochMillis": 1776754013057,
"time": "2026-04-21T06:46Z",
"routingRuleId": "a0378292-6072-474a-a136-e1ed709d67c8",
"status": "FAILED"
}
}
Scheduled Updates
実行成功時の通知メールの例は以下です。
実行成功時のHTTP通知のJSON文字列の例(上記のメール通知とは同一実行)は以下です。
{
"metadata": { "version": 1 },
"data": {
"libItemId": "d5dd3ffd-8161-4028-bb01-bc91156be9e9",
"activityLink": "https://winx/spotfire/ui/schedulingRouting/activity?ruleId=3910a999-1a95-44df-a1c2-2a846202c00f",
"name": "Sales and Marketing",
"details": "Load",
"source": "Scheduled Updates",
"ruleLink": "https://winx/spotfire/ui/schedulingRouting/rules/edit/3910a999-1a95-44df-a1c2-2a846202c00f",
"epochMillis": 1776819325494,
"time": "2026-04-22T00:55Z",
"routingRuleId": "3910a999-1a95-44df-a1c2-2a846202c00f",
"status": "SUCCESSFUL"
}
}
実行失敗時の通知メールの例は以下です。
実行失敗時のHTTP通知のJSON文字列の例(上記のメール通知とは同一実行)は以下です。
{
"metadata": { "version": 1 },
"data": {
"libItemId": "19b0e69e-2f1c-490a-a984-181ce021a312",
"activityLink": "https://winx/spotfire/ui/schedulingRouting/activity?ruleId=ce0927a0-7165-4c2f-a001-2b577e63ea15",
"name": "オフィス用品_2007年",
"details": "1 failed attempts so far; Failed to open data source.",
"source": "Scheduled Updates",
"ruleLink": "https://winx/spotfire/ui/schedulingRouting/rules/edit/ce0927a0-7165-4c2f-a001-2b577e63ea15",
"epochMillis": 1776819385485,
"time": "2026-04-22T00:56Z",
"routingRuleId": "ce0927a0-7165-4c2f-a001-2b577e63ea15",
"status": "FAILED"
}
}
参考資料
- Configuring an email notification
- Configuring an HTTP notification
- config-email-notification
- config-http-notification
- add-notification-preference
- remove-notification-preference
- config-scheduled-updates-retries