EventBus
[更新日:2025年2月13日]
サービス基本情報
概要
「EventBus」は、イベント検知サービスとジョブスケジュールサービスを統合したマネージドサービスです。
スケジュールトリガーやイベントソースの変更検知を利用して、自動的にジョブを実行できます。
機能説明
イベントソースとスケジュールの両方をトリガーとして利用可能
スケジュール機能により、指定した時間間隔でジョブを実行
イベント検知機能により、特定のイベント発生時にジョブを実行
APIベースの操作で、外部サービスとの連携が容易
仕様
スケジュールの周期は、最短1分から設定できます
スケジュールを登録すると、指定した周期でジョブが自動的に実行されます
ジョブの実行はベストエフォート型で厳密なリアルタイム性は保証されません
β版における注意事項と制限事項
ご利用いただく前に、以下の点にご注意ください。
品質保証(SLA)の適用対象外です。
サポートは限定的となり、利用状況によっては一時的に利用が制限される場合があります。
また、β版では以下の機能制限があります。
イベントソースの変更検知はご利用いただけません
実行できるジョブは「シンプル通知」と「シンプルMQ」のみです
ジョブの実行ログは最新の1件のみ参照できます
想定される利用シーン
スケジュール機能
ワークフローの起動
ユーザーアプリケーションの定期バッチ起動
イベント検知
ログイン失敗イベントを検知してのメール通知
サーバ起動イベントを検知してロードバランサへ追加
オブジェクトストレージのPUTを検知してMQへメッセージ送信
料金体系
β版での提供期間中は無償でご利用いただけます。
正式版リリースに伴う課金開始の際には、事前にアナウンスさせていただきます。
サポート
ご不明点やお困りの際は、 会員メニュー内のメールサポート より、サービス情報を「さくらのクラウド」としてお問い合わせください。
利用手順
β版はAPIのみでの提供となります。
※さくらのクラウドAPIの利用方法など、一般的な情報については APIドキュメント を参照ください。
EventBusの利用を開始するには以下の手順が必要になります。
「実行設定」の作成
「実行設定」のシークレット設定
「スケジュール」の作成
注意事項
APIを実行するためには、APIキーに「作成・削除」のアクセスレベルが必要になります。
詳細は、 アクセスレベルのページ をご覧ください。
APIキーの作成
APIキーの発行方法は APIキー をご覧ください。
以降の説明ではAPIキーを以下のように表現します。
パラメータ |
説明 |
---|---|
アクセストークン |
APIキーのアクセストークンです。 |
アクセストークンシークレット |
APIキーのアクセストークンシークレットです。 |
実行設定の作成
どのようなジョブを実行するかの設定を登録します。
パラメータ |
説明 |
省略時のデフォルト値 |
---|---|---|
宛先 |
ジョブが呼び出すAPIの宛先を指定します。 |
省略不可 |
通知先グループID |
シンプル通知の通知先グループのリソースID |
Destinationがsimplenotificationの場合は省略不可 |
メッセージ |
通知するメッセージ内容 |
Destinationがsimplenotificationの場合は省略不可 |
キュー名 |
シンプルMQのキュー名 |
Destinationがsimplemqの場合は省略不可 |
コンテンツ |
シンプルMQに送るコンテンツ |
Destinationがsimplemqの場合は省略不可 |
# シンプル通知のAPIを呼び出す場合
$ curl -X POST \
-u "ACCESS_TOKEN:ACCESS_TOKEN_SECRET" \
-d '{
"CommonServiceItem": {
"Name": "example",
"Description": "example",
"Settings": {
"Destination": "simplenotification",
"Parameters": "{\"group_id\": \"通知先グループID\", \"message\":\"メッセージ\"}"
},
"Provider": {
"Class": "eventbusprocessconfiguration"
}
}
}' \
https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/commonserviceitem/
# シンプルMQのAPIを呼び出す場合
$ curl -X POST \
-u "ACCESS_TOKEN:ACCESS_TOKEN_SECRET" \
-d '{
"CommonServiceItem": {
"Name": "example",
"Description": "example",
"Settings": {
"Destination": "simplemq",
"Parameters": "{\"queue_name\": \"キュー名\", \"content\":\"コンテンツ\"}"
},
"Provider": {
"Class": "eventbusprocessconfiguration"
}
}
}' \
https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/commonserviceitem/
実行設定のシークレット設定/更新
シンプル通知やシンプルMQのAPIを呼び出す際に使用するシークレットを登録します。
パラメータ |
説明 |
省略時のデフォルト値 |
---|---|---|
実行設定ID |
実行設定のリソースIDです |
省略不可 |
アクセストークン |
APIキーのアクセストークンです。 |
実行設定のDestinationがsimplenotificationの場合は省略不可 |
アクセストークンシークレット |
APIキーのアクセストークンシークレットです。 |
実行設定のDestinationがsimplenotificationの場合は省略不可 |
APIキー |
シンプルMQのAPIキーです。 |
実行設定のDestinationがsimplemqの場合は省略不可 |
# シンプル通知のAPIを呼び出す場合
$ curl -X PUT \
-u "ACCESS_TOKEN:ACCESS_TOKEN_SECRET" \
-d '{
"Secret": {
"AccessToken": "アクセストークン",
"AccessTokenSecret": "アクセストークンシークレット"
}
}' \
https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/commonserviceitem/実行設定ID/eventbus/processconfiguration/set-secret
# シンプルMQのAPIを呼び出す場合
$ curl -X PUT \
-u "ACCESS_TOKEN:ACCESS_TOKEN_SECRET" \
-d '{
"Secret": {
"APIKey": "APIキー"
}
}' \
https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/commonserviceitem/実行設定ID/eventbus/processconfiguration/set-secret
スケジュールの作成
どのようなジョブを実行するかの設定を登録します。
パラメータ |
説明 |
省略時のデフォルト値 |
---|---|---|
実行設定ID |
実行設定のリソースIDです |
省略不可 |
実行間隔 |
繰り返し実行する間隔を指定します。 |
省略不可 |
実行間隔単位 |
実行間隔の単位を指定します。 |
Destinationがsimplenotificationの場合は省略不可 |
開始時刻 |
スケジュール実行を開始する時刻のエポックミリ秒 |
現在時刻 |
# シンプル通知のAPIを呼び出す場合
$ curl -X POST \
-u "ACCESS_TOKEN:ACCESS_TOKEN_SECRET" \
-d '{
"CommonServiceItem": {
"Name": "schedule",
"Description": "description",
"Settings": {
"ProcessConfigurationID": "実行設定ID",
"RecurringStep": 実行間隔,
"RecurringUnit": "実行間隔単位",
"StartsAt": 開始時刻
},
"Provider": {
"Class": "eventbusschedule"
}
}
}' \
https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/commonserviceitem/
その他の利用例
実行設定の参照
実行設定を参照します。
パラメータ |
説明 |
省略時のデフォルト値 |
---|---|---|
実行設定ID |
実行設定のリソースIDです |
省略不可 |
$ curl -X GET \
-u "ACCESS_TOKEN:ACCESS_TOKEN_SECRET" \
https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/commonserviceitem/実行設定ID
実行設定の一覧
実行設定の一覧を取得します。
$ curl -X GET \
-u "ACCESS_TOKEN:ACCESS_TOKEN_SECRET" \
"https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/commonserviceitem/?\{\"Filter\":\{\"Provider.Class\":\[\"eventbusprocessconfiguration\"\]\}\}"
実行設定の更新
実行設定を更新します。
パラメータ |
説明 |
省略時のデフォルト値 |
---|---|---|
実行設定ID |
実行設定のリソースIDです |
省略不可 |
宛先 |
ジョブが呼び出すAPIの宛先を指定します。 |
省略不可 |
通知先グループID |
シンプル通知の通知先グループのリソースID |
Destinationがsimplenotificationの場合は省略不可 |
メッセージ |
通知するメッセージ内容 |
Destinationがsimplenotificationの場合は省略不可 |
キュー名 |
シンプルMQのキュー名 |
Destinationがsimplemqの場合は省略不可 |
コンテンツ |
シンプルMQに送るコンテンツ |
Destinationがsimplemqの場合は省略不可 |
# シンプル通知のAPIを呼び出す場合
$ curl -X PUT \
-u "ACCESS_TOKEN:ACCESS_TOKEN_SECRET" \
-d '{
"CommonServiceItem": {
"Name": "example",
"Description": "example",
"Settings": {
"Destination": "simplenotification",
"Parameters": "{\"group_id\": \"通知先グループID\", \"message\":\"メッセージ\"}"
},
"Provider": {
"Class": "eventbusprocessconfiguration"
}
}
}' \
https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/commonserviceitem/実行設定ID
# シンプルMQのAPIを呼び出す場合
$ curl -X PUT \
-u "ACCESS_TOKEN:ACCESS_TOKEN_SECRET" \
-d '{
"CommonServiceItem": {
"Name": "example",
"Description": "example",
"Settings": {
"Destination": "simplemq",
"Parameters": "{\"queue_name\": \"キュー名\", \"content\":\"コンテンツ\"}"
},
"Provider": {
"Class": "eventbusprocessconfiguration"
}}
}
}' \
https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/commonserviceitem/実行設定ID
実行設定の削除
実行設定を削除します。
スケジュールから利用されている実行設定は削除できません。
パラメータ |
説明 |
省略時のデフォルト値 |
---|---|---|
実行設定ID |
実行設定のリソースIDです |
省略不可 |
$ curl -X DELETE \
-u "ACCESS_TOKEN:ACCESS_TOKEN_SECRET" \
https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/commonserviceitem/実行設定ID
スケジュールの参照
スケジュールを参照します。
パラメータ |
説明 |
省略時のデフォルト値 |
---|---|---|
スケジュールID |
スケジュールのリソースIDです |
省略不可 |
$ curl -X GET \
-u "ACCESS_TOKEN:ACCESS_TOKEN_SECRET" \
https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/commonserviceitem/スケジュールID
スケジュールの一覧
スケジュールの一覧を取得します。
$ curl -X GET \
-u "ACCESS_TOKEN:ACCESS_TOKEN_SECRET" \
"https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/commonserviceitem/?\{\"Filter\":\{\"Provider.Class\":\[\"eventbusschedule\"\]\}\}"
スケジュールの更新
スケジュールを更新します。
パラメータ |
説明 |
省略時のデフォルト値 |
---|---|---|
スケジュールID |
スケジュールのリソースIDです |
省略不可 |
実行設定ID |
実行設定のリソースIDです |
省略不可 |
実行間隔 |
繰り返し実行する間隔を指定します。 |
省略不可 |
実行間隔単位 |
実行間隔の単位を指定します。 |
Destinationがsimplenotificationの場合は省略不可 |
開始時刻 |
スケジュール実行を開始する時刻のエポックミリ秒 |
現在時刻 |
# シンプル通知のAPIを呼び出す場合
$ curl -X PUT \
-u "ACCESS_TOKEN:ACCESS_TOKEN_SECRET" \
-d '{
"CommonServiceItem": {
"Name": "schedule",
"Description": "description",
"Settings": {
"ProcessConfigurationID": "実行設定ID",
"RecurringStep": 実行間隔,
"RecurringUnit": "実行間隔単位",
"StartsAt": 開始時刻
},
"Provider": {
"Class": "eventbusschedule"
}
}
}' \
https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/commonserviceitem/スケジュールID
スケジュールの削除
スケジュールを削除します。
パラメータ |
説明 |
省略時のデフォルト値 |
---|---|---|
スケジュールID |
スケジュールのリソースIDです |
省略不可 |
$ curl -X DELETE \
-u "ACCESS_TOKEN:ACCESS_TOKEN_SECRET" \
https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/commonserviceitem/スケジュールID
用語集
本サービスで使用される主な用語と概念を説明します。
ジョブ
EventBusが実行する処理
実行設定
ジョブをどのように実行するかの設定
スケジュール
イベントを発生させる周期の設定