本トピックでは、DataWorks のイベントタイプ、メッセージフォーマット、およびフィールドの意味について説明します。このドキュメントを使用して、イベントリストとメッセージフォーマットに関する情報を迅速に検索および照会できます。
概要
DataWorks では、イベントは、DataWorks 内でチェックポイントを作成できるかどうか、および自己管理型サービスによってサブスクライブされた後に処理結果を返すことができるかどうかに基づいて、標準イベントまたは拡張ポイントイベントに分類されます。
-
標準イベント:これらのイベントメッセージをサブスクライブできますが、DataWorks 内の操作をブロックすることはできません。これらのイベントは OpenEvent を使用してサブスクライブします。詳細については、「Open Events の概要」をご参照ください。
-
拡張ポイントイベント:これらのイベントメッセージをサブスクライブした後、DataWorks オープンプラットフォームの拡張機能を使用して、イベントメッセージへの応答をカスタマイズできます。拡張機能を使用して拡張ポイントでの操作を管理する場合、カスタム拡張が処理結果を返すまで、その拡張ポイントでの DataWorks プラットフォームユーザーによる操作は中断されます。
このリストでは、サポートされているイベントをモジュール別に分類し、各イベントが標準イベントか拡張ポイントイベントかを示します。また、EventBridge イベントタイプ (Type) と拡張イベントコード (eventCode) もリストアップしています。
-
EventBridge イベントタイプ (Type):イベントメッセージをフィルタリングするために使用されるフィールドです。詳細については、メッセージサブスクリプションの有効化をご参照ください。
-
拡張イベントコード (eventCode):イベントタイプに対応するイベントコードです。ローカル開発中に、DataWorks から送信されるメッセージ本文からこのコードを取得して、ターゲットのイベントタイプを識別します。
ワークスペースレベルのイベント
ワークスペースレベルのモジュールによって生成されるイベントはワークスペースレベルのイベントです。たとえば、Data Studio のノード実行やオペレーションセンターの定期インスタンスのステータス変更などです。以下のイベントリストを使用して、どのイベントが標準イベントで、どれが拡張ポイントイベントであるか、およびそれらのメッセージフォーマットを識別します。
以下のメッセージフォーマットタブには、一部のコンテンツのみが含まれています。EventBridge または Function Compute に送信される完全なメッセージについては、「付録:メッセージフォーマット」をご参照ください。
Data Studio イベントリスト
イベントリスト
|
イベントタイプ |
イベント (およびトリガー操作) |
標準イベント |
拡張ポイントイベント |
EventBridge イベントタイプ (Type) |
拡張イベントコード (eventCode) |
|
ノード変更 |
ノードの作成
|
|
|
|
|
|
ノードの更新
|
|
|
|
|
|
|
ファイル変更
|
ファイル削除の事前イベント 開発環境でノードを削除 説明
削除されたファイルはごみ箱に移動されます。 |
|
|
|
|
|
ファイルコミットの事前イベント |
|
|
|
|
|
|
ファイルデプロイの事前イベント |
|
|
|
|
|
|
コード実行の事前イベント |
|
|
|
|
|
|
テーブル変更 |
テーブルを開発環境にコミットする事前イベント |
|
|
|
|
|
テーブルを本番環境にコミットする事前イベント |
|
|
|
|
メッセージフォーマット
ノード変更イベント (作成と更新)
次の例は、ノードの作成、変更、削除イベントのメッセージ本文のフォーマット (イベントメッセージの data フィールドの内容) を示しています。
{
"datacontenttype": "application/json;charset=utf-8",
"data": {
"nodeName": "****",
"programType": "ODPS_SQL",
"cronExpress": "00 04 00 * * ?",
"blockBusiness": false,
"schedulerType": "NORMAL",
"ownerId": "19****735",
"priority": 1,
"baselineId": 70***287,
"operator": "19***735", //この操作のオペレーター
"eventCode": "node-change-created",
"repeatability": true,
"modifyTime": 17***864,
"createTime": 17***864,
"tenantId": 28***656,
"nodeId": 70***003,
"projectId": 9***4
}
}
フィールドの説明は次のとおりです:
|
フィールド |
タイプ |
説明 |
|
nodeName |
String |
ノード名。 |
|
programType |
String |
ファイルのコードタイプ。ListFileType 操作を呼び出してファイルのコードタイプを照会するか、「ファイルコードタイプ」を参照してファイルコードタイプを表示できます。 |
|
cronExpress |
String |
定期スケジューリングのための cron 式。 このパラメーターは、DataWorks コンソールの Data Studio タスクの に対応しています。 スケジュールとスケジュール時刻を設定すると、DataWorks は対応する cron 式を自動的に生成します。例:
説明
cron 式には次の制限があります:
|
|
schedulerType |
String |
タスクインスタンスのスケジューリングタイプ。有効な値:
|
|
ownerId |
String |
ノード所有者の Alibaba Cloud ユーザー ID。このパラメーターが空の場合、デフォルトで呼び出し元の Alibaba Cloud ユーザー ID が使用されます。 |
|
priority |
Integer |
タスクの優先度。有効な値:1、3、5、7、および 8。値が大きいほど優先度が高くなります。 |
|
baselineId |
Long |
ベースライン ID。 |
|
repeatability |
Boolean |
ノードが再実行可能かどうかを示します:
|
|
modifyTime |
Long |
ノードが最後に変更された時刻。 |
|
createTime |
Long |
ノードが作成された時刻。 |
|
nodeId |
Long |
ノード ID。 |
|
projectId |
Long |
ノードが属するワークスペースの ID。 |
|
tenantId |
Long |
ノードが属するテナントの ID。 |
|
operator |
String |
ノードを作成、変更、または削除したユーザーの UID。 |
|
eventCode |
String |
拡張イベントコード。 |
ファイル変更イベント (コミット、デプロイ、実行、削除)
-
次の例は、ファイルのコミットおよびデプロイイベントのメッセージ本文のフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "data": { "fileName": "******", "extensionBizId": "eb******9ce", "changeType": "0", "blockBusiness": false, "dataSourceName": "0_******engine", "operator": "19***735", "eventCode": "commit-file", "fileCreateTime": "2024-07-12 11:08:50", "tenantId": 28***656, "fileOwner": "19***735", "fileVersion": 1, "projectId": 9***4, "fileType": 10, "fileId": 50***830, "resourceType": 1 } }フィールドの説明は次のとおりです:
フィールド
タイプ
説明
operator
String
ファイルをコミットまたはデプロイしたユーザーの UID。
projectId
Long
ファイルが属するワークスペースの ID。
tenantId
Long
テナント ID。
nodeId
Long
スケジューリングノード ID。
fileType
Long
ファイルのコードタイプ。ListFileType 操作を呼び出してファイルのコードタイプを照会するか、「ファイルコードタイプ」を参照してファイルコードタイプを表示できます。
fileName
String
ファイル名。
fileOwner
String
ファイル所有者。
extensionBizId
String
拡張チェックポイントプロセスの ID。
changeType
String
ファイルの変更タイプ:
-
0:ファイルを作成します。
-
1:ファイルを更新します。
-
2:ファイルを削除します。
fileCreateTime
String
ファイルが作成された時刻。フォーマットは
yyyy-MM-dd HH:mm:ssです。fileId
Long
ファイル ID。
fileVersion
Long
ファイルバージョン。
dataSourceName
String
データソース名。
eventCode
String
拡張イベントコード。
-
-
次の例は、ファイルの削除および実行イベントのメッセージ本文のフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "data": { "fileName": "***", "extensionBizId": "bf******6e3", "blockBusiness": false, "operator": "19***735", "eventCode": "delete-file", "fileCreateTime": "2024-07-12 11:08:50", //ファイル作成時刻 "tenantId": 28***656, "fileOwner": "19***735", //ファイル所有者 "nodeId": 70***003, "projectId": 9***4, "fileType": 10, "fileId": 50***830, "resourceType": 1 } }フィールドの説明は次のとおりです:
フィールド
タイプ
説明
operator
String
ファイルを削除または実行したユーザーの UID。
projectId
Long
ファイルが属するワークスペースの ID。
tenantId
Long
テナント ID。
nodeId
Long
スケジューリングノード ID。
fileType
Long
ファイルのコードタイプ。ListFileType 操作を呼び出してファイルコードタイプを照会するか、「ファイルコードタイプ」で詳細をご参照ください。
fileName
String
ファイル名。
fileOwner
String
ファイル所有者。
extensionBizId
String
拡張機能チェックポイントプロセスの ID。
fileCreateTime
String
ファイルが作成された時刻。フォーマットは
yyyy-MM-dd HH:mm:ssです。fileId
Long
ファイル ID。
eventCode
String
拡張機能イベントコード。
テーブル変更イベント (テーブルを開発環境にコミット、またはテーブルを本番環境にデプロイ)
{
"datacontenttype": "application/json;charset=utf-8",
"data": {
"operator": "**************",
"projectId": 12*****56,
"tenantId": 12******56,
"extensionBizId": "12***56",
"tableName":"table1",
"tableType":"ODPS",
"maxComputeProject":"project1"
}
}
次の表にフィールドを説明します:
|
フィールド |
タイプ |
説明 |
|
operator |
String |
テーブルをコミットまたはデプロイしたユーザーの UID。 |
|
projectId |
Long |
ワークスペース ID。 |
|
tenantId |
Long |
テナント ID。 |
|
extensionBizId |
String |
拡張機能チェックポイントプロセスの ID。 |
|
tableName |
String |
テーブル名。 |
|
tableType |
String |
テーブルタイプ。値は ODPS です。 |
|
maxComputeProject |
String |
対応する MaxCompute プロジェクトの名前。 |
データ統合イベントリスト
イベントリスト
|
イベントタイプ |
イベント (およびトリガー操作) |
標準イベント |
拡張ポイントイベント |
EventBridge イベントタイプ (Type) |
拡張イベントコード (eventCode) |
|
ノード変更イベント |
タスクを開始 |
|
|
|
|
|
タスクの一括開始 |
|
|
|
|
メッセージフォーマット
ノード変更イベント- タスクの開始
次の例は、ノード変更イベント - タスク開始イベントのメッセージ本文のフォーマット (イベントメッセージの data フィールドの内容) を示しています。
## メッセージ v1 タスク開始 (テーブル数 500 以下)
{
"datacontenttype": "application/json;charset=utf-8",
"data": {
"eventCode": "start-diJob",
"extensionBizId": "0a4***b8ae",
"extensionBizName": "sync_mysql_to_odps_20240726_192307",
"appId": 293624,
"showTableMapping": true,
"tenantId": 28***656,
"blockBusiness": true,
"id": 5280,
"projectId": 9***4,
"tableMapping": [
{
"srcTable": "xb_test_116",
"dstDatasourceName": "odps_first",
"srcDatabaseName": "xiaobo_sharding_79fz",
"srcDatasourceName": "mysql_3357_pub_ip_1",
"dstTable": "ods_xb_test_116"
},
{
"srcTable": "xb_test_117",
"dstDatasourceName": "odps_first",
"srcDatabaseName": "xiaobo_sharding_79fz",
"srcDatasourceName": "mysql_3357_pub_ip_1",
"dstTable": "ods_xb_test_117"
},
{
"srcTable": "xb_test_118",
"dstDatasourceName": "odps_first",
"srcDatabaseName": "xiaobo_sharding_79fz",
"srcDatasourceName": "mysql_3357_pub_ip_1",
"dstTable": "ods_xb_test_118"
},
{
"srcTable": "xb_test_135",
"dstDatasourceName": "odps_first",
"srcDatabaseName": "xiaobo_sharding_79fz",
"srcDatasourceName": "mysql_3357_pub_ip_1",
"dstTable": "ods_xb_test_135"
}
],
"operator": "1504650005316516"
}
}
## メッセージ v2 タスク開始 (テーブル数 500 以下)
{
"datacontenttype": "application/json;charset=utf-8",
"data": {
"extensionBizId": "59d***50fc",
"extensionBizName": "sync_mysql_to_holo_20240911_170801",
"blockBusiness": true,
"operator": "19***735",
"setting": {
"lastStartPosition": "2024-09-11 12:00:00"
},
"eventCode": "start-diJob",
"jobId": 5777,
"forceRun": false,
"appId": 293624,
"showTableMapping": true,
"tenantId": 28***656,
"startAsV2": false,
"tableMapping": [
{
"srcTable": "test_verify1",
"dstDatasourceName": "molin_db",
"srcDatabaseName": "di_test",
"srcDatasourceName": "mysql_public",
"dstTable": "test_verify1"
},
{
"srcTable": "test_verify1_dst",
"dstDatasourceName": "molin_db",
"srcDatabaseName": "di_test",
"srcDatasourceName": "mysql_public",
"dstTable": "test_verify1_dst"
},
{
"srcTable": "mysql_0_timetest2",
"dstDatasourceName": "molin_db",
"srcDatabaseName": "di_test",
"srcDatasourceName": "mysql_public",
"dstTable": "mysql_0_timetest2"
}
]
}
}
## メッセージ v2 タスク開始 (テーブル数 500 超)、"showTableMapping": false
{
"datacontenttype": "application/json;charset=utf-8",
"data": {
"eventCode": "start-diJob",
"jobId": 5502,
"forceRun": false,
"extensionBizId": "f4c***7cbc",
"extensionBizName": "sync_mysql_to_holo_20240412_213634",
"appId": 330914,
"showTableMapping": false,
"tenantId": 28***656,
"blockBusiness": true,
"startAsV2": false,
"operator": "19***735",
"setting": {
"lastStartPosition": "2024-04-12 22:07:02",
"startDateTime": "2024-09-10 17:00:00",
"timeZone": "Asia/Shanghai"
}
}
}
## 正規表現
{
"datacontenttype": "application/json;charset=utf-8",
"data": {
"eventCode": "start-diJob",
"jobId": 5778,
"forceRun": false,
"extensionBizId": "a5d***75ba",
"extensionBizName": "sync_mysql_to_holo_20240912_170517",
"appId": 293624,
"showTableMapping": true,
"tenantId": 28***656,
"blockBusiness": true,
"startAsV2": false,
"tableMapping": [
{
"srcTable": "test.*",
"dstDatasourceName": "molin_db",
"srcDatabaseName": ".*",
"srcDatasourceName": "mysql_public",
"dstTable": "aaa"
},
{
"srcTable": "shard.*",
"dstDatasourceName": "molin_db",
"srcDatabaseName": ".*",
"srcDatasourceName": "mysql_public",
"dstTable": "vvv"
}
],
"operator": "19***735"
}
}
次の表にフィールドを説明します:
|
フィールド |
タイプ |
説明 |
|
projectId |
Long |
DataWorks ワークスペース ID。 |
|
operator |
String |
オペレーターの UID。 |
|
extensionBizName |
String |
ソリューション名。 |
|
showTableMapping |
Boolean |
テーブルマッピング情報を返すかどうかを示します。
テーブル数が 500 を超える場合、showTableMapping はデフォルトで |
|
tableMapping |
JSONArray |
テーブルマッピング。 |
|
srcDatasourceName |
String |
ソースデータソースの名前。 |
|
srcDatabaseName |
String |
ソースデータベースの名前。 |
|
srcTable |
String |
ソーステーブルの名前。 |
|
dstDatasourceName |
String |
宛先データソースの名前。 |
|
dstTable |
String |
宛先テーブルの名前。 |
|
tenantId |
Long |
テナント ID。 |
|
eventCode |
String |
拡張機能イベントコード。 |
ノード変更イベント- タスクの一括開始
次の例は、ノード変更イベント - タスクの一括開始イベントのメッセージ本文のフォーマット (イベントメッセージの data フィールドの内容) を示しています。
{
"datacontenttype": "application/json;charset=utf-8",
"data": {
"needErrorMessage": false,
"extensionBizId": "2de***c4c6",
"extensionBizName": "sync_mysql_to_holo_20240911_170801,sync_mysql_to_odps_20240726_192307",
"errorMessageOnlyFailedFileIds": false,
"blockBusiness": true,
"env": "prod",
"operator": "15***516",
"setting": {
"startDateTime": "2024-09-12 14:00:00",
"timeZone": "Asia/Shanghai"
},
"jobIds": [
5777,
5679
],
"eventCode": "batch-start-diJob",
"tableMappings": [
{
"extensionBizName": "sync_mysql_to_holo_20240911_170801",
"id": 5777,
"tableMapping": [
{
"srcTable": "test_verify1",
"dstDatasourceName": "molin_db",
"srcDatabaseName": "di_test",
"srcDatasourceName": "mysql_public",
"dstTable": "test_verify1"
},
{
"srcTable": "test_verify1_dst",
"dstDatasourceName": "molin_db",
"srcDatabaseName": "di_test",
"srcDatasourceName": "mysql_public",
"dstTable": "test_verify1_dst"
},
{
"srcTable": "mysql_0_timetest2",
"dstDatasourceName": "molin_db",
"srcDatabaseName": "di_test",
"srcDatasourceName": "mysql_public",
"dstTable": "mysql_0_timetest2"
}
]
},
{
"extensionBizName": "sync_mysql_to_odps_20240726_192307",
"id": 5679,
"tableMapping": [
{
"srcTable": "xb_test_116",
"dstDatasourceName": "odps_first",
"srcDatabaseName": "xiaobo_sharding_79fz",
"srcDatasourceName": "mysql_3357_pub_ip_1",
"dstTable": "ods_xb_test_116"
},
{
"srcTable": "xb_test_117",
"dstDatasourceName": "odps_first",
"srcDatabaseName": "xiaobo_sharding_79fz",
"srcDatasourceName": "mysql_3357_pub_ip_1",
"dstTable": "ods_xb_test_117"
},
{
"srcTable": "xb_test_118",
"dstDatasourceName": "odps_first",
"srcDatabaseName": "xiaobo_sharding_79fz",
"srcDatasourceName": "mysql_3357_pub_ip_1",
"dstTable": "ods_xb_test_118"
},
{
"srcTable": "xb_test_135",
"dstDatasourceName": "odps_first",
"srcDatabaseName": "xiaobo_sharding_79fz",
"srcDatasourceName": "mysql_3357_pub_ip_1",
"dstTable": "ods_xb_test_135"
}
]
}
],
"appId": 293624,
"showTableMapping": true,
"tenantId": 52***018,
"projectId": 9***4
}
}
次の表にフィールドを説明します:
|
フィールド |
タイプ |
説明 |
|
projectId |
Long |
DataWorks ワークスペース ID。 |
|
operator |
String |
オペレーターの UID。 |
|
extensionBizName |
String |
ソリューション名。 |
|
setting |
JSONObject |
起動設定。 |
|
startDateTime |
String |
開始時刻。 |
|
timeZone |
String |
開始タイムゾーン。 |
|
tableMapping |
JSONArray |
テーブルマッピング。 |
|
srcDatasourceName |
String |
ソースデータソースの名前。 |
|
srcDatabaseName |
String |
ソースデータベースの名前。 |
|
srcTable |
String |
ソーステーブルの名前。 |
|
dstDatasourceName |
String |
宛先データソースの名前。 |
|
dstTable |
String |
宛先テーブルの名前。 |
|
showTableMapping |
Boolean |
テーブルマッピング情報を返すかどうかを示します。
テーブル数が 500 を超える場合、showTableMapping はデフォルトで |
|
tenantId |
Long |
テナント ID。 |
|
eventCode |
String |
拡張機能イベントコード。 |
オペレーションセンターイベントリスト
イベントリスト
スケジューリングリソースグループの変更または所有者の変更は、node-change-updated をトリガーします。
|
イベントタイプ |
イベント (およびトリガー操作) |
標準イベント |
拡張ポイントイベント |
EventBridge イベントタイプ (Type) |
拡張イベントコード (eventCode) |
|
ノード変更 |
ノードの削除
|
|
|
|
|
|
ノードアンデプロイの事前イベント 本番環境の定期タスクからノードを直接アンデプロイ 説明
この操作は Data Studio のノードも削除し、ごみ箱に移動します。 |
|
|
|
|
|
|
ノードフリーズの事前イベント 重要
このイベントは node-change-updated イベントもトリガーします。 |
|
|
|
|
|
|
ノードフリーズ解除の事前イベント 重要
このイベントは node-change-updated イベントもトリガーします。 |
|
|
|
|
|
|
ノードのバックフィルデータ |
バックフィルデータの事前イベント |
|
|
|
|
|
タスクステータス変更 |
定期タスクのステータス変更 |
|
|
|
|
|
インスタンスの変更 |
インスタンスのフリーズ |
|
|
|
|
|
インスタンスのフリーズ解除 |
|
|
|
|
|
|
インスタンスの終了 |
|
|
|
|
|
|
インスタンスの再実行
|
|
|
|
|
|
|
インスタンスを成功に設定 |
|
|
|
|
|
|
インスタンスの指定された上流依存関係を削除 |
|
|
|
|
|
|
インスタンスのフリーズの事前イベント |
|
|
|
|
|
|
インスタンスのフリーズ解除の事前イベント |
|
|
|
|
|
|
インスタンスの再実行の事前イベント |
|
|
|
|
|
|
インスタンスを成功に設定する事前イベント |
|
|
|
|
|
|
インスタンスを終了する事前イベント |
|
|
|
|
|
|
期限切れインスタンスの削除 |
|
|
|
|
|
|
ワークフローステータスの変更 |
ワークフローステータスの変更
|
|
|
|
|
|
モニタリングアラート |
モニタリングアラート |
|
|
|
|
メッセージフォーマット
ノード変更イベント (削除、アンデプロイ、フリーズ、フリーズ解除)
-
次の例は、ノード削除イベントのメッセージ本文のフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "data": { "nodeName": "", "programType": "ODPS_SQL", "cronExpress": "00 20 00 * * ?", "schedulerType": "NORMAL", "ownerId": "19****735", "priority": 1, "baselineId": 117801853, "repeatability": true, "modifyTime": 1646364549642, "createTime": 1646364549642, "datasource": "odps_source", "tenantId": 28378****10656, "nodeId": 100***150, "projectId": 30**95, "operator": "19***735" //この操作のオペレーター } }次の表にフィールドを説明します:
フィールド
タイプ
説明
nodeName
String
ノード名。
programType
String
ファイルのコードタイプ。ListFileType 操作を呼び出してファイルのコードタイプを照会するか、「ファイルコードタイプ」でコードタイプをご参照ください。
cronExpress
String
定期スケジューリングのための cron 式。
このパラメーターは、DataWorks コンソールの Data Studio タスクの に対応します。
スケジュールとスケジュール時刻を設定すると、DataWorks は対応する cron 式を自動的に生成します。例:
-
毎日 05:30 にスケジュール:
00 30 05 * * ? -
毎時 15 分にスケジュール:
00 15 * * * ? -
10 分ごとにスケジュール:
00 00/10 * * * ? -
毎日 08:00 から 17:00 まで 10 分ごとにスケジュール:
00 00-59/10 8-17 * * * ? -
毎月 1 日の 00:20 にスケジュール:
00 20 00 1 * ? -
1 月 1 日の 00:10 から 3 ヶ月ごとにスケジュール:
00 10 00 1 1-12/3 ? -
毎週火曜日と金曜日の 00:05 にスケジュール:
00 05 00 * * 2,5
説明cron 式には次の制限があります:
-
最小スケジューリング間隔は 5 分です。
-
毎日の最も早いスケジュール時刻は 00:05 です。
schedulerType
String
タスクインスタンスのスケジューリングタイプ。有効な値:
-
0:NORMAL。定期スケジューリングによってトリガーされる通常の定期タスク。
-
1:MANUAL。定期スケジューリングによってトリガーされない手動タスク。
-
2:PAUSE。フリーズされたタスク。タスクは定期スケジューリングによってトリガーされますが、スケジューリング時に失敗に設定されます。
-
3:SKIP。ドライランタスク。タスクは定期スケジューリングによってトリガーされますが、スケジューリング時に成功に設定されます。
-
4:SKIP_UNCHOOSE。一時的なワークフローで選択されていないタスク。一時的なワークフローにのみ存在し、スケジューリング時に成功に設定されます。
-
5:SKIP_CYCLE。実行周期に達していない週次または月次タスク。タスクは定期スケジューリングによってトリガーされますが、スケジューリング時に成功に設定されます。
-
6:CONDITION_UNCHOOSE。上流インスタンスにブランチ (IF) ノードが含まれており、下流ノードがブランチノードによって選択されていません。タスクは直接ドライランに設定されます。
-
7:REALTIME_DEPRECATED。リアルタイムで生成された定期インスタンスで、期限切れになったもの。タスクは直接成功に設定されます。
ownerId
String
ノード所有者の Alibaba Cloud ユーザー ID。このパラメーターが空の場合、デフォルトで呼び出し元の Alibaba Cloud ユーザー ID が使用されます。
priority
Integer
タスクの優先度。有効な値:1、3、5、7、および 8。値が大きいほど優先度が高くなります。
baselineId
Long
ベースライン ID。
repeatability
Boolean
ノードが再実行可能かどうかを指定します:
-
true:ノードは再実行可能です。
-
false:ノードは再実行できません。
modifyTime
Long
ノードが最後に変更された時刻。
createTime
Long
ノードが作成された時刻。
nodeId
Long
ノード ID。
projectId
Long
ノードが属するワークスペースの ID。
tenantId
Long
ノードが属するテナントの ID。
operator
String
ノードを作成、変更、または削除したユーザーの UID。
-
-
次の例は、ノードのフリーズ、フリーズ解除、アンデプロイイベントのメッセージ本文のフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "data": { "operator": "19***735", "projectId": 12***56, "tenantId": 28***656, "nodeIds":[1,2,3], "extensionBizId": "12***56" } }次の表にフィールドを説明します:
フィールド
タイプ
説明
operator
String
ノードをフリーズ、フリーズ解除、またはアンデプロイしたユーザーの UID。
projectId
Long
ノードが属するワークスペースの ID。
tenantId
Long
テナント ID。
nodeIds
Array
操作されたノード ID のリスト。
extensionBizId
String
拡張機能チェックポイントプロセスの ID。
ノードのバックフィルデータ
次の例は、バックフィルデータイベントのメッセージ本文のフォーマット (イベントメッセージの data フィールドの内容) を示しています。
{
"datacontenttype": "application/json;charset=utf-8",
"data": {
"excludeNodeIds":[],
"rootNodeId": 1000****271,
"startFutureInstanceImmediately": false,
"useMultipleTimePeriods": true,
"operator": "19***735",
"eventCode": "backfill-data",
"multipleTimePeriods": "[{\"bizBeginTime\":\"2022-04-17\",\"bizEndTime\":\"2022-04-17\"}]",
"parallelGroup": 1,
"rootNodeProjectId": 12*****8,
"isParallel": false,
"name": "P_fff_20220418_215404",
"tenantId": 16935*****3377,
"includeNodeIds":
[
10***271
],
"projectId": 9***4,
"order": "asc",
"extensionBizId": "12***56"
}
}
次の表にフィールドを説明します:
|
フィールド |
タイプ |
説明 |
|
name |
String |
バックフィルデータワークフローの名前。 |
|
rootNodeId |
Long |
バックフィルデータワークフローのルートノードの ID。 |
|
rootNodeProjectId |
Long |
バックフィルデータワークフローのルートノードが属するワークスペースの ID。 |
|
includeNodeIds |
Array |
バックフィルデータ操作に含まれるノード ID のリスト。 |
|
excludeNodeIds |
Array |
バックフィルデータ操作から除外されるノード ID のリスト。このリスト内のノードはドライランインスタンスを生成し、スクリプトコンテンツを実行せずにスケジューリング時に成功に設定されます。 |
|
bizBeginTime |
String |
タスクの開始時刻。このパラメーターは、時間単位の定期タスクにのみ必須です。フォーマットは |
|
bizEndTime |
String |
タスクの終了時刻。このパラメーターは、時間単位の定期タスクにのみ必須です。フォーマットは |
|
isParallel |
Boolean |
バックフィルデータ操作が並列で実行できるかどうかを指定します:
|
|
parallelGroup |
Integer |
並列グループの数。値 1 はグループ化なしを示します。 |
|
startFutureInstanceImmediately |
Boolean |
スケジュール時刻をスキップして、将来のビジネス日付を持つインスタンスをすぐに実行するかどうかを指定します:
|
|
order |
String |
ビジネス日付に基づいてバックフィルデータインスタンスを実行する順序:
|
|
multipleTimePeriods |
String |
セグメントで選択されたビジネス日付の範囲。例: |
|
tenantId |
Long |
テナント ID。 |
|
projectId |
Long |
バックフィルデータ操作が実行されるプロジェクトの ID。 |
|
operator |
String |
バックフィルデータ操作を実行したユーザーの ID。 |
|
extensionBizId |
String |
拡張機能チェックポイントプロセスの ID。 |
|
eventCode |
String |
拡張機能イベントコード。 |
タスクステータス変更イベント
次の例は、定期タスクのステータス変更イベントのメッセージ本文のフォーマット (イベントメッセージの data フィールドの内容) を示しています。
{
"datacontenttype": "application/json;charset=utf-8",
"data": {
"beginWaitTimeTime": 1652700576000,
"dagId": 446***330,
"dagType": 0,
"eventCode": "instance-status-changes",
"taskType": 0,
"modifyTime": 1652700577000,
"createTime": 1652543233000,
"appId": 3*****2,
"tenantId": 235454***432001,
"opCode": 31,
"flowId": 1,
"nodeId": 100***219,
"beginWaitResTime": 1652700577000,
"taskId": 453***169,
"status": 3
}
}
次の表にフィールドを説明します:
|
フィールド |
タイプ |
説明 |
|
finishTime |
Long |
定期タスクインスタンスの実行が終了した時刻。 |
|
beginWaitTimeTime |
Long |
定期タスクインスタンスが実行待ちを開始した時刻。 |
|
beginRunningTime |
Long |
定期タスクインスタンスの実行が開始された時刻。 |
|
dagId |
Long |
|
|
dagType |
Integer |
DAG タイプ。有効な値:
|
|
taskType |
Integer |
タスクインスタンスのスケジューリングタイプ。有効な値:
|
|
modifyTime |
Long |
タスクインスタンスの最新の変更時刻。 |
|
createTime |
Long |
タスクインスタンスの作成時刻。 |
|
appId |
Long |
ワークスペース ID。ListProjects 操作を呼び出してワークスペース ID 情報を照会できます。 |
|
tenantId |
Long |
定期タスクインスタンスが属するワークスペースのテナント ID。 |
|
opCode |
Integer |
定期タスクインスタンスの操作コード。このフィールドは無視できます。 |
|
flowId |
Long |
ワークフロー ID。
|
|
nodeId |
Long |
定期タスクインスタンスに対応するノード ID。 |
|
beginWaitResTime |
Long |
定期タスクインスタンスがリソースを待機し始めた時刻。 |
|
taskId |
Long |
定期タスクインスタンスの ID。 |
|
status |
Integer |
タスクのステータス。有効な値:
|
|
eventCode |
String |
拡張機能イベントコード。 |
インスタンス変更イベント (フリーズ、フリーズ解除、終了、再実行、成功に設定)
次の例は、インスタンス変更イベントのメッセージ本文のフォーマット (イベントメッセージの data フィールドの内容) を示しています。
{
"datacontenttype": "application/json;charset=utf-8",
"data": {
"eventCode": "freeze-instance",
"operator": "19***735",
"projectId": 12***8,
"projectType": "PROD",
"taskIds": [
523***9736
],
"tenantId": 28***656
}
}
次の表にフィールドを説明します:
|
フィールド |
タイプ |
説明 |
|
operator |
String |
インスタンス操作 (フリーズ、フリーズ解除、終了、再実行、成功に設定など) を実行したユーザーの UID。 |
|
projectType |
String |
実行環境。
|
|
taskIds |
List |
インスタンス ID のリスト。 |
|
projectId |
Long |
DataWorks ワークスペース ID。 |
|
tenantId |
Long |
インスタンスが属するワークスペースのテナント ID。 |
|
eventCode |
String |
イベントコード。 |
インスタンス変更前イベント (フリーズ、フリーズ解除、再実行、成功に設定、インスタンスの強制終了)
次の例は、インスタンス変更前イベントのメッセージ本文のフォーマット (イベントメッセージの data フィールドの内容) を示しています。
{
"datacontenttype": "application/json;charset=utf-8",
"data": {
"eventCode": "pre-freeze-instance",
"extensionBizId": "055***afaa",
"extensionBizName": "Node name",
"projectId": 9***4,
"taskIds": [
523536569736
],
"tenantId": 28***656,
"operator": "19***735"
}
}
次の表にフィールドを説明します:
|
フィールド |
タイプ |
説明 |
|
extensionBizId |
String |
拡張機能チェックポイントプロセスの ID。 |
|
extensionBizName |
String |
操作オブジェクトの名前。複数のオブジェクトは「オブジェクト名...」として記述されます。 |
|
projectId |
Long |
DataWorks ワークスペース ID。 |
|
taskIds |
List |
インスタンス ID のリスト。 |
|
tenantId |
String |
インスタンスが属するワークスペースのテナント ID。 |
|
operator |
Long |
インスタンス操作を実行したユーザーの UID。 |
|
eventCode |
String |
拡張ポイントイベントコード。 |
インスタンス変更イベント - 期限切れインスタンスの削除
次の例は、期限切れインスタンスの削除イベントのメッセージ本文のフォーマット (イベントメッセージの data フィールドの内容) を示しています。
{
"datacontenttype": "application/json;charset=utf-8",
"data": {
"eventCode": "expired-task-instances-deleted",
"deletedTaskInstanceIds": [
524***035,
524***498,
524***637
],
"appId": 307303,
"tenantId": 28***656,
"blockBusiness": false,
"owner": "1107***538",
"operationTime": 1734505954897
}
}
次の表にフィールドを説明します:
|
フィールド |
タイプ |
説明 |
|
deletedTaskInstanceIds |
List |
削除されたインスタンス ID のリスト。 |
|
owner |
String |
インスタンス所有者のユーザー ID。 |
|
operationTime |
Long |
操作時間 |
|
blockBusiness |
Boolean |
拡張機能が存在する場合にプロセスをブロックするかどうかを指定します。
|
|
appId |
Long |
DataWorks ワークスペース ID。 |
|
tenantId |
String |
インスタンスが属するワークスペースのテナント ID。 |
|
operator |
Long |
インスタンス操作を実行したユーザーの UID。 |
|
eventCode |
String |
拡張ポイントイベントコード。 |
インスタンスから指定された上流依存関係を削除するイベント
次の例は、インスタンスから指定された上流依存関係を削除するイベントのメッセージ本文のフォーマット (イベントメッセージの data フィールドの内容) を示しています:
{
"datacontenttype": "application/json;charset=utf-8",
"aliyunaccountid": "110******38",
"aliyunpublishtime": "2024-12-18T07:12:35.463Z",
"data": {
"eventCode": "delete-task-instance-dependencies",
"upstreamTaskInstanceIds": [
52******35,
52******98,
52******37
],
"appId": 3***03,
"tenantId": 52******36,
"blockBusiness": false,
"taskInstanceId": 52******49,
"operator": "19***735",
"operationTime": 1734505954897
}
}
次の表にフィールドを説明します:
|
フィールド |
タイプ |
説明 |
|
taskInstanceId |
Long |
下流インスタンス ID。 |
|
upstreamTaskInstanceIds |
List |
依存関係が削除される上流インスタンス ID のリスト。 |
|
operator |
String |
操作を実行したユーザーの UID。 |
|
operationTime |
Long |
操作時間。 |
ワークフローステータス変更イベント
次の例は、ワークフローステータス変更イベントのメッセージ本文のフォーマット (イベントメッセージの data フィールドの内容) を示しています。
{
"datacontenttype": "application/json;charset=utf-8",
"data": {
"bizDate": "2022-11-07 00:00:00",
"createTime": "2022-11-08 10:56:32",
"dagId": 500358972116,
"dagName": "P_test_spark_true_copy_20221108_105631",
"eventCode": "dag-status-changes",
"dagType": 3,
"flowId": 1,
"flowName": "ATCLOUD_FLOW",
"operator": "11****538",
"projectEnv": "PROD",
"projectId": 25***63,
"status": 6,
"tenantId": 52***736
}
}
次の表にフィールドを説明します:
|
フィールド |
タイプ |
説明 |
|
bizDate |
String |
ワークフローのビジネス日付。フォーマット: |
|
createTime |
String |
ワークフローの作成時刻。フォーマット: |
|
dagId |
Long |
DAG ID。この ID を使用して DAG の詳細を取得できます。 |
|
dagName |
String |
ワークフローの名前。 |
|
dagType |
Integer |
DAG のタイプ。有効な値:
|
|
flowId |
Integer |
DAG が属するワークフローの ID。 |
|
flowName |
String |
DAG が属するワークフローの名前。 |
|
operator |
String |
ワークフローを作成したユーザーの UID。 |
|
projectEnv |
String |
ワークフローの環境。有効な値:
|
|
tenantId |
Long |
定期インスタンスが属するワークスペースのテナント ID。 |
|
projectId |
Long |
ワークスペース ID。 |
|
status |
Integer |
ワークフロー内のタスクのステータス。有効な値:
|
|
eventCode |
String |
拡張機能イベントコード。 |
モニタリングアラート
-
次の例は、ベースラインアラートのメッセージ本文のフォーマット (メッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "data": { "eventCode": "workbench-monitor-alert", "alarmType": "SLA_ALERT", "baselineId": 137***723, "baselineName": "ODS layer check task dedicated -- hourly", "baselineStatus": 3, "bizDate": 1654444800000, "inGroupId": 14, "nodeId": 1000***8734, "projectId": 76***34, "taskId": 307***3778, "tenantId": 28***656 } }次の表にフィールドを説明します:
フィールド
タイプ
説明
alarmType
String
アラートタイプ。有効な値:
-
SLA_ALERT
-
REMIND_ALERT
-
TOPIC_ALERT
baselineId
Long
ベースライン ID。
baselineName
String
ベースライン名。
baselineStatus
Integer
ベースラインのステータス。有効な値:
-
-1:異常。
-
1:安全。
-
2:警告。
-
3:違反。
bizDate
Long
ビジネス日付のタイムスタンプ。
inGroupId
Integer
ベースラインインスタンスの周期番号。日次ベースラインの値は
1です。時間単位のベースラインの値の範囲は[1,24]です。nodeId
Long
ベースラインの例外を引き起こしたノードの ID。
projectId
Long
ベースラインが属するワークスペースの ID。
taskId
Long
ベースラインの例外を引き起こしたインスタンスの ID。
tenantId
Long
テナント ID。
eventCode
String
拡張機能イベントコード。
-
-
次の例は、イベントアラートのメッセージ本文のフォーマット (メッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "data": { "alarmType": "TOPIC_ALERT", "nodeId": 1000***315, "projectId": 91***09, "taskId": 307***0357, "taskStatus": 5, "tenantId": 28***656, "topicId": 1084769 } }次の表にフィールドを説明します:
フィールド
タイプ
説明
alarmType
String
アラートタイプ。有効な値:
-
SLA_ALERT
-
REMIND_ALERT
-
TOPIC_ALERT
topicId
Long
イベント ID。
taskStatus
String
イベントをトリガーしたノードインスタンスのステータス。
nodeId
Integer
イベントをトリガーしたノードの ID。
projectId
Long
イベントをトリガーしたノードが属するワークスペースの ID。
taskId
Long
イベントをトリガーしたノードインスタンスの ID。
tenantId
Long
テナント ID。
-
-
次の例は、タスクルールアラートのメッセージ本文のフォーマット (メッセージの
dataフィールドの内容) を示しています。説明通常、ルールオブジェクトにはタスクノード、ベースライン、ワークスペース、ワークフローが含まれます。
{ "datacontenttype": "application/json;charset=utf-8", "data": { "alarmType": "REMIND_ALERT", "nodeIds": "1000***5472,1000***5473,1000***5474", "projectId": 9***4, "remindId": 7605, "remindName": "Error alert", "remindType": "ERROR", "remindUnit": "NODE", "taskIds": "307***0896,307***0870,307***0855", "tenantId": 28***656 } }次の表にフィールドを説明します:
フィールド
タイプ
説明
alarmType
String
アラートタイプ。有効な値:
-
SLA_ALERT
-
REMIND_ALERT
-
TOPIC_ALERT
nodeIds
String
ルールアラートをトリガーしたノードのリスト。
remindId
Long
ルール ID。
remindType
Stirng
ルールのトリガー条件。有効な値:
-
FINISHED:完了。
-
UNFINISHED:未完了。
-
ERROR:エラー発生。
-
CYCLE_UNFINISHED:周期未完了。
-
TIMEOUT:タイムアウト。
projectId
Long
ルールをトリガーしたノードが属するワークスペースの ID。
remindUnit
String
ルールをトリガーしたオブジェクトのタイプ。有効な値:
-
NODE:タスクノード。
-
GATEWAY_RES:スケジューリング用の排他的リソースグループ。
-
DI_RES:データ統合リソースグループ。
tenantId
Long
テナント ID。
taskId
String
ルールアラートをトリガーしたインスタンスのリスト。
remindName
String
ルール名。
-
-
次の例は、リソースグループルールアラートのメッセージ本文のフォーマット (メッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "data": { "alarmType": "REMIND_ALERT", "projectId": 9***4, "remindId": 200***186, "remindName": "Exclusive resource group alert", "remindType": "RES_GROUP_THRESHOLD", "remindUnit": "GATEWAY_RES", "resourceGroupIdentifier": "S_res_group_195820716552192_1650965857744", "resourceGroupName": "emr_exclusive_scheduld", "resourceGroupType": "GATEWAY", "tenantId": 28***656 } }次の表にフィールドを説明します:
フィールド
タイプ
説明
alarmType
String
アラートタイプ。有効な値:
-
SLA_ALERT
-
REMIND_ALERT
-
TOPIC_ALERT
remindId
Long
ルール ID。
remindType
Stirng
ルールのトリガー条件。有効な値:
-
FINISHED:完了。
-
UNFINISHED:未完了。
-
ERROR:エラー発生。
-
CYCLE_UNFINISHED:周期未完了。
-
TIMEOUT:タイムアウト。
-
RES_GROUP_THRESHOL:リソースグループ使用率。
-
RES_GROUP_WAIT_AMOUNT:リソースグループでリソースを待機しているインスタンスの数。
projectId
Long
ルールをトリガーしたノードが属するワークスペースの ID。
remindUnit
String
ルールをトリガーしたオブジェクトのタイプ。有効な値:
-
NODE:タスクノード。
-
GATEWAY_RES:スケジューリング用の排他的リソースグループ。
-
DI_RES:データ統合リソースグループ。
tenantId
Long
テナント ID。
remindName
String
ルール名。
resourceGroupIdentifier
String
リソースグループの一意の識別子。
resourceGroupName
String
リソースグループの名前。
resourceGroupType
String
リソースグループのタイプ。有効な値:
-
GATEWAY:スケジューリングリソースグループ。
-
DI:データ統合リソースグループ。
-
セキュリティセンターイベントリスト
イベントリスト
|
イベントタイプ |
イベント (およびトリガー操作) |
標準イベント |
拡張ポイントイベント |
EventBridge イベントタイプ (Type) |
拡張機能イベントコード (eventCode) |
|
承認センター (V1) |
権限リクエストプロセス V1 の作成 |
|
|
|
|
|
権限リクエストプロセス V1 の完了 |
|
|
|
|
|
|
承認センター (V2) |
権限リクエストプロセス V2 の作成 |
|
|
|
|
|
権限リクエストプロセス V2 の完了 |
|
|
|
|
|
|
セキュリティセンター (権限リクエスト V1) |
権限リクエストフォーム V1 の事前イベント作成 |
|
|
|
|
|
セキュリティセンター (権限リクエスト V2) |
権限リクエストフォーム V2 の事前イベント作成 |
|
|
|
|
メッセージフォーマット
承認センター (権限リクエストプロセス V1)
-
次の例は、権限リクエスト作成の事前イベントのメッセージ本文のフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "data": { "appId":194209, "assignee":"286098539641742899", "assigneeName":"yupeng.sunyp", "createTime":1652094363000, "eventType":"approval", "process":{ "applicant":"286098539641742899", "applicantName":"yupeng.sunyp", "approvalContent":{ "applyPeriod":"2997964800000", "applyReason":"Test", "arrayData":[ { "ownerBaseId":"1822***45", "objectType":"TABLE", "odpsTable":"loghub_070103", "envType":1, "projectGuid":"odps.b_mc1", "objectGuid":"odps.b_mc1.loghub_070103", "tenantId":28***656, "objectName":"loghub_070103", "ownerAccountName":"ALIYUN$******(******)", "odpsProject":"B_MC1", "projectName":"B_MC1", "actions":[ "Select", "Describe" ], "projectId":9***4, "workspaceId":"9***4" } ], "contentType":"application/json", "granteeAccounts":[ { "granteeId":"2860985***99", "granteeTypeSub":103, "granteeType":1, "granteeName":"RAM$dataworks_3h1_1:yupeng.sunyp" }, { "granteeId":"237857631119109360", "granteeTypeSub":105, "granteeType":1, "granteeName":"RAM$dataworks_3h1_1:dev" } ], "odpsProjectName":"B_MC1", "projectEnv":"1", "resourceSummary":"loghub_070103", "tenantId":28***656, "workspaceId":194209 }, "assignmentCategory":"MaxCompute", "createTime":1652094363000, "processDefinitionId":"definition-3dcc9ce7-d29d-435d-a908-60d4355ff5e2", "processId":"528535869984706", "status":"Pending", "title":"MaxComputeTable", "updateTime":1652094363000 }, "processId":"528535869984706", "flowId":"867***763", "status":"Submit", "eventCode": "approval-change-created", "taskId":"528535870015424", "tenantId":28***656, "updateTime":1652094364000 } }{ "datacontenttype": "application/json;charset=utf-8", "data": { "appId":227859, "assignee":"286098539641742899", "eventCode": "approval-change-finished", "assigneeName":"******.******", "comments":"ces", "createTime":1652095981000, "eventType":"approval", "flowId":"867***763", "process":{ "applicant":"286098***2899", "applicantName":"yupeng.sunyp", "approvalContent":{ "applyPeriod":"2997964800000", "applyReason":"Test", "arrayData":[ { "ownerBaseId":"2382***884", "objectType":"TABLE", "odpsTable":"cdd", "objectNameCn":"******", "envType":1, "projectGuid":"odps.da_simple_202112", "objectGuid":"odps.da_simple_202112.cdd", "tenantId":0, "objectName":"cdd", "ownerAccountName":"RAM$******(******)", "odpsProject":"da_simple_202112", "projectName":"da_simple_202112", "actions":[ "Select", "Describe" ], "projectId":9***4, "workspaceId":"9***4" } ], "contentType":"application/json", "granteeAccounts":[ { "granteeId":"286***899", "granteeTypeSub":103, "granteeType":1, "granteeName":"RAM$dataworks_3h1_1:yupeng.sunyp" } ], "odpsProjectName":"da_simple_202112", "projectEnv":"1", "resourceSummary":"cdd", "tenantId":28***656, "workspaceId":227859 }, "assignmentCategory":"MaxCompute", "createTime":1652095981000, "processDefinitionId":"definition-6e6418e6-c65f-4f26-a673-88576b1c1e4a", "processId":"528***192", "status":"Pending", "title":"MaxComputeTable", "updateTime":1652095981000 }次の表にフィールドを説明します:
フィールド
タイプ
説明
appId
Long
ワークスペース ID。
assignee
String
承認ハンドラの BaseId。
assigneeName
String
承認ハンドラの名前。
comments
String
備考。
createTime
Long
承認リクエストが作成されたときのタイムスタンプ。
flowId
String
承認リクエスト ID。
status
String
承認リクエストのステータス。
taskId
String
承認タスク ID。
tenantId
String
テナント ID。
updateTime
String
承認リクエストが更新されたときのタイムスタンプ。
eventType
String
イベントタイプ。
process
Object
承認タスクオブジェクト。
applicant
String
申請者の BaseID。
applicantName
String
申請者の名前。
assignmentCategory
String
リクエスト内容のタイプ。
createTime
String
承認リクエストが作成されたときのタイムスタンプ。
processDefinitionId
String
ワークフロー定義 ID。
processId
String
ワークフロー ID。
status
String
ワークフローステータス。
title
String
ワークフロータイトル。
updateTime
Long
承認リクエストが更新されたときのタイムスタンプ。
approvalContent
Object
承認内容オブジェクト。
applyPeriod
String
承認リクエストの要求期間。
applyReason
String
承認リクエストの理由。
contentType
String
承認内容のタイプ。
odpsProjectName
String
承認プロジェクトの名前。
resourceSummary
String
リソースの説明。
tenantId
Long
テナント ID。
workspaceId
Long
ワークスペース ID。
projectEnv
String
承認プロジェクトが属する環境。
granteeAccounts
Array
権限付与されたアクセスのリスト。
.granteeId
String
被付与者の ID。
granteeType
String
被付与者のタイプ。
granteeTypeSub
String
被付与者のサブタイプ。
granteeName
String
被付与者の名前。
arrayData
Array
権限付与内容のリスト。詳細については、「付録:メッセージフォーマット」をご参照ください。
eventType
String
イベントタイプ。
-
次の例は、承認リクエスト完了イベントのメッセージ本文のフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "data": { "appId": 227859, "assignee": "286098539641742899", "eventCode": "approval-change-finished", "assigneeName": "******.******", "comments": "ces", "createTime": 1652095981000, "eventType": "approval", "flowId": "867***763", "process": { "applicant": "2860****899", "applicantName": "yupeng.sunyp", "approvalContent": { "applyPeriod": "2997***0000", "applyReason": "Test", "arrayData": [ { "ownerBaseId": "2382***8*884", "objectType": "TABLE", "odpsTable": "cdd", "objectNameCn": "******", "envType": 1, "projectGuid": "odps.da_simple_202112", "objectGuid": "odps.da_simple_202112.cdd", "tenantId": 0, "objectName": "cdd", "ownerAccountName": "RAM$******(******)", "odpsProject": "da_simple_202112", "projectName": "da_simple_202112", "actions": [ "Select", "Describe" ], "projectId": 9***4, "workspaceId": "9***4" } ], "contentType": "application/json", "granteeAccounts": [ { "granteeId": "286***899", "granteeTypeSub": 103, "granteeType": 1, "granteeName": "RAM$dataworks_3h1_1:yupeng.sunyp" } ], "odpsProjectName": "da_simple_202112", "projectEnv": "1", "resourceSummary": "cdd", "tenantId": 28***656, "workspaceId": 227859 }, "assignmentCategory": "MaxCompute", "createTime": 1652095981000, "processDefinitionId": "definition-6e6418e6-c65f-4f26-a673-88576b1c1e4a", "processId": "528***192", "status": "Pending", "title": "MaxComputeTable", "updateTime": 1652095981000 } } }次の表にフィールドを説明します:
フィールド
タイプ
説明
appId
Long
ワークスペース ID。
assignee
String
承認ハンドラの BaseId。
assigneeName
String
承認ハンドラの名前。
comments
String
備考。
createTime
Long
承認リクエストが作成されたときのタイムスタンプ。
flowId
String
承認リクエスト ID。
status
String
承認リクエストのステータス。
taskId.
String
承認タスク ID。
tenantId
String
テナント ID。
updateTime
String
承認リクエストが最後に更新されたときのタイムスタンプ。
eventType
String
イベントタイプ。
process
Object
承認タスクオブジェクト。
applicant
String
申請者の BaseID。
applicantName
String
申請者の名前。
assignmentCategory
String
リクエスト内容のタイプ。
createTime
String
承認リクエストが作成されたときのタイムスタンプ。
processDefinitionId
String
ワークフロー定義 ID。
processId
String
ワークフロー ID。
status
String
ワークフローステータス。
title
String
ワークフロータイトル。
updateTime
Long
承認リクエストが最後に更新されたときのタイムスタンプ。
approvalContent
Object
承認内容オブジェクト。
applyPeriod
String
リクエストの期間。
applyReason
String
リクエストの理由。
contentType
String
コンテンツタイプ。
odpsProjectName
String
プロジェクト名。
resourceSummary
String
リソースの説明。
tenantId
Long
テナント ID。
workspaceId
Long
ワークスペース ID。
projectEnv
String
環境。
granteeAccounts
Array
アクセス許可のリスト。
granteeId
String
被付与者の ID。
granteeType
String
付与タイプ。
granteeTypeSub
String
被付与者のサブタイプ。アカウントタイプを示します。有効な値:
-
本番アカウント (本番スケジューリングに使用されるアカウント):ACCOUNT_PRD(101)
-
アプリケーションアカウント:ACCOUNT_APP(102)
-
個人アカウント:ACCOUNT_USER(103)
-
部門アカウント:ACCOUNT_DEPT(104)
-
モックアカウント:ACCOUNT_MOCK(106)
-
他のユーザーのアカウント:ACCOUNT_OTHER_USER(105)
granteeName
String
被付与者の名前。
arrayData
Array
付与内容のリスト。詳細については、「付録:付与内容リスト」をご参照ください。
eventType
String
イベントタイプ。
-
承認センター (権限リクエストプロセス V2)
権限リクエストプロセス作成 V2 (eventCode: approval-change-created-v2) と権限リクエストプロセス完了 V2 (eventCode: approval-change-finished-v2) は、ワークスペースレベルの通常イベントです。V1 とは異なり、V2 イベントの process.approvalContent フィールドはネイティブの ApplicationContent 構造を使用し、resource.defSchema と resource.defVersion を通じてリソースタイプを識別します。
プロセス完了イベントは、承認プロセスが終了したこと (承認または拒否) を示します。これは、基盤となるリソースの権限付与が正常に実行されたことを意味するものではありません。権限付与が有効になったかどうかを確認するには、他の運用 API を通じてクエリを実行してください。
-
次の例は、権限リクエストプロセス作成 V2 イベントの完全なメッセージフォーマットを示しています。
{ "datacontenttype": "application/json;charset=utf-8", "aliyunaccountid": "1234567890123456", "aliyunpublishtime": "2026-07-27T11:02:40.250Z", "data": { "eventType": "approval", "eventCode": "approval-change-created-v2", "blockBusiness": false, "tenantId": 123456789012345, "appId": 365379, "flowId": "357145652750839893", "flowCode": "MaxComputeTable", "expiredDate": 1787742157827, "processId": "357145652750839893", "status": "Pending", "createTime": 1785150160055, "updateTime": 1785150160055, "process": { "processId": "357145652750839893", "processDefinitionId": "securityCenter-4c08dea6-****-****-****-379822e800de", "title": "MaxComputeTable", "assignmentCategory": "MaxCompute", "approvalContent": { "tenantId": 123456789012345, "workspaceId": 365379, "applyReason": "Required for business queries", "applyPeriod": "1787742157827", "contentType": "application/json", "arrayData": [ { "createTime": "2026-07-27T19:02:39", "updateTime": "2026-07-27T19:02:40", "contentId": "rmAN77FxTOXsVFRXcLkg5", "processInstanceId": "357145652750839893", "tenantId": "123456789012345", "resource": { "defSchema": "MaxCompute", "defVersion": "v1.0.0", "metaData": { "table": "example_table", "schema": "default", "tenant": "123456789012345", "project": "example_project", "workspace": "365379" } }, "resourceIndex": "ce92c2e7e51a605c0ae0467f95588959", "grantee": { "principalType": "RAM_USER", "principalId": "110755000425****" }, "accessTypes": [ "select" ], "finalAccessTypes": [ "select" ], "deadline": 1787742157827, "expirationTime": 1787742157827, "status": "WAIT_APPROVAL", "operation": "Grant" } ], "applyType": "MaxComputeTable" }, "status": "Pending", "createTime": 1785150160055, "updateTime": 1785150160055, "applicant": "110755000425****", "applicantName": "example_user" } }, "aliyunoriginalaccountid": "1234567890123456", "specversion": "1.0", "aliyuneventbusname": "example-bus", "id": "8f7b4a38-af26-43e4-8277-a9f290ef632a", "source": "acs.dataworks", "time": "2026-07-27T11:02:40.246Z", "aliyunregionid": "cn-beijing", "type": "dataworks:ApprovalChange:ApprovalChangeCreatedV2" }dataのトップレベルフィールドを次の表に示します。完全なサブオブジェクトのフィールド説明については、セキュリティセンター事前チェックイベント V2 のセクションをご参照ください。フィールド
タイプ
説明
eventType
String
固定値:
approval。eventCode
String
イベントコード。作成イベントの場合は固定値
approval-change-created-v2、完了イベントの場合は固定値approval-change-finished-v2。tenantId
Long
DataWorks テナント ID。
appId
Long
DataWorks ワークスペース ID。
flowId
String
リクエスト ID。セキュリティセンターのネイティブプロセスでは、これは
processIdと同じです。flowCode
String
リクエストタイプ。例:
MaxComputeTable。processId
String
承認プロセスインスタンス ID。
status
String
作成イベントの場合は
Pendingに設定され、完了イベントの場合はCompletedに設定されます。approvalAction
String
承認アクション。完了イベントでは
Agree(承認済み) またはDeny(拒否済み) として返されます。assignee
String
最終承認者の Base ID。通常、完了イベントで返されます。
createTime
Long
イベントスナップショットの作成時刻。ミリ秒単位の UNIX タイムスタンプ。
updateTime
Long
イベントスナップショットの更新時刻。ミリ秒単位の UNIX タイムスタンプ。
process
Object
承認プロセスとリクエスト内容。
process.processId
String
承認プロセスインスタンス ID。
process.assignmentCategory
String
リソースカテゴリ。例:
MaxCompute、DLF、HOLO。リソースを識別するためにこのフィールドだけに依存しないでください。arrayData[].resource.defSchemaを代わりに使用してください。process.approvalContent
Object
承認リクエスト内容。
process.approvalContent.arrayData
Array
セキュリティセンターネイティブの
ApplicationContentDTOリスト。各レコードはリソースと権限のセットを表します。arrayData[].resource
Object
セキュリティセンターネイティブのリソース定義。
defSchema、defVersion、およびmetaDataを含みます。arrayData[].grantee
Object
権限を付与されたプリンシパル。
principalTypeとprincipalIdを含みます。arrayData[].accessTypes
Array<String>
ユーザーがリクエストした権限のリスト。
arrayData[].finalAccessTypes
Array<String>
承認のトリミング後の最終的な権限リスト。通常、作成時には
accessTypesと同じです。arrayData[].expirationTime
Long
権限の有効期限。ミリ秒単位の UNIX タイムスタンプ。
arrayData[].status
String
リクエスト内容のステータス。通常、作成イベントでは
WAIT_APPROVAL、承認された完了イベントではCONFIRMEDです。arrayData[].operation
String
権限操作の方向。通常、権限リクエストイベントでは
Grantです。process.applicant
String
申請者の Base ID。
-
次の例は、権限リクエストプロセス完了 V2 イベントの完全なメッセージフォーマットを示しています。
{ "datacontenttype": "application/json;charset=utf-8", "aliyunaccountid": "1234567890123456", "aliyunpublishtime": "2026-07-27T11:02:40.840Z", "data": { "eventType": "approval", "eventCode": "approval-change-finished-v2", "blockBusiness": false, "tenantId": 123456789012345, "appId": 365379, "flowId": "357145652750839893", "flowCode": "MaxComputeTable", "expiredDate": 1787742157827, "processId": "357145652750839893", "status": "Completed", "approvalAction": "Agree", "assignee": "110755000425****", "assigneeName": "example_user", "createTime": 1785150160788, "updateTime": 1785150160788, "process": { "processId": "357145652750839893", "processDefinitionId": "securityCenter-4c08dea6-****-****-****-379822e800de", "title": "MaxComputeTable", "assignmentCategory": "MaxCompute", "approvalContent": { "tenantId": 123456789012345, "workspaceId": 365379, "applyReason": "Required for business queries", "applyPeriod": "1787742157827", "contentType": "application/json", "arrayData": [ { "createTime": "2026-07-27T19:02:39", "updateTime": "2026-07-27T19:02:41", "contentId": "rmAN77FxTOXsVFRXcLkg5", "processInstanceId": "357145652750839893", "tenantId": "123456789012345", "resource": { "defSchema": "MaxCompute", "defVersion": "v1.0.0", "metaData": { "table": "example_table", "schema": "default", "tenant": "123456789012345", "project": "example_project", "workspace": "365379" } }, "resourceIndex": "ce92c2e7e51a605c0ae0467f95588959", "grantee": { "principalType": "RAM_USER", "principalId": "110755000425****" }, "accessTypes": [ "select" ], "finalAccessTypes": [ "select" ], "deadline": 1787742157827, "expirationTime": 1787742157827, "status": "CONFIRMED", "operation": "Grant" } ], "applyType": "MaxComputeTable" }, "status": "Completed", "createTime": 1785150160788, "updateTime": 1785150160788, "applicant": "110755000425****", "applicantName": "example_user" } }, "aliyunoriginalaccountid": "1234567890123456", "specversion": "1.0", "aliyuneventbusname": "example-bus", "id": "13501239-dd6e-403d-a249-c17c94c0bfa1", "source": "acs.dataworks", "time": "2026-07-27T11:02:40.822Z", "aliyunregionid": "cn-beijing", "type": "dataworks:ApprovalChange:ApprovalChangeFinishedV2" }フィールドの説明は、作成 V2 イベントと同じです (前のフィールド説明表をご参照ください)。次の表は、完了イベントで異なるフィールドを示しています。
フィールド
タイプ
説明
status
String
完了イベントの固定値
Completed。注意:Completedは承認プロセスが終了したことを示します。基盤となる権限が有効になったことを意味するものではありません。実際の権限付与は非同期で実行される場合があります。approvalAction
String
承認アクション。
Agree(承認済み) またはDeny(拒否済み)。assignee / assigneeName
String
最終承認者の Base ID と表示名。完了イベントでのみ返されます。
arrayData[].status
String
承認後は
CONFIRMEDに設定され、拒否後はREJECT_APPROVALに設定されます。process.status
String
ワークフローステータス。完了イベントでは
Completed(終了) に設定されます。
セキュリティセンター (権限リクエスト作成前イベント V1)
次の例は、テーブル権限リクエスト事前チェックイベントのメッセージエンティティフォーマット (イベントメッセージの data フィールドの内容) を示しています。
{
"datacontenttype": "application/json;charset=utf-8",
"data": {
"eventType": "approval-create-before",
"operator":"19***735",
"order":{
"applyReason":"Test",
"deadlineDate":"1",
"deadlineType":"month",
"granteeObjectList":[
{
"granteeId":"1239****8872"
}
],
"projectMeta":{
"envCode":1,
"labelSecurity":false,
"objectMetaList":[
{
"action":[
"Select",
"Describe"
],
"name":"tablei",
"projectGuid":"odps.d11aa"
}
],
"projectId":2****0,
"projectName":"d11aa"
}
},
"projectId":2****0,
"tenantId":5564****6465
}
}
次の表にフィールドを説明します:
|
フィールド |
タイプ |
説明 |
|
operator |
String |
テーブル権限リクエスト事前チェック操作を開始したユーザーの UID。 |
|
projectId |
Long |
テーブル権限リクエスト事前チェック操作が実行されたワークスペース ID。 |
|
tenantId |
Long |
テーブル権限リクエスト事前チェック操作が実行されたテナント ID。 |
|
order |
Object |
リクエスト情報。 |
|
applyReason |
String |
リクエストの理由。 |
|
deadlineDate |
String |
リクエストの有効期限。 |
|
deadlineType |
String |
リクエストの有効期限の単位。例:Day または Month。 |
|
granteeObjectList |
Object |
被付与者オブジェクトのリスト。 |
|
granteeId |
String |
被付与者オブジェクト ID。RAM ユーザー ID です。 |
|
projectMeta |
Object |
ワークスペース情報。 |
|
envCode |
Integer |
ワークスペース環境識別子。0 は開発環境、1 は本番環境を示します。 |
|
labelSecurity |
Boolean |
ラベルレベルのアクセス制御が有効かどうかを指定します:
|
|
objectMetaList |
Array |
付与オブジェクトのリスト。 |
|
action |
Array |
付与アクション。たとえば、テーブルに対する Select または Describe 権限の付与。 |
|
name |
String |
権限がリクエストされたテーブルの名前。 |
|
projectGuid |
String |
テーブルが存在するワークスペースの GUID。 |
|
projectName |
String |
テーブルが存在するワークスペースの名前。 |
|
eventType |
String |
イベントタイプ。 |
セキュリティセンター (権限リクエスト作成前イベント V2)
権限リクエスト作成前イベント V2 (eventCode: approval-change-before-create-v2) は、グローバルレベルの拡張ポイントイベントです。V1 事前チェックイベントとは異なり、V2 メッセージ本文 data.order はネイティブの ApplicationForm オブジェクトであり、defSchema を通じて現在のすべてのリソースタイプをサポートし、resource.defSchema と resource.defVersion を通じてリソースタイプを識別します。
次の例は、権限リクエスト作成前 V2 イベントの完全なメッセージフォーマットを示しています。
{
"datacontenttype": "application/json;charset=utf-8",
"aliyunaccountid": "1234567890123456",
"aliyunpublishtime": "2026-07-23T07:28:41.230Z",
"data": {
"eventType": "approval-create-before-v2",
"eventCode": "approval-change-before-create-v2",
"tenantId": 123456789012345,
"extensionBizId": "34bd203df59e91fe8fb5f1a00ebb0588@@v2",
"operator": "205328183930****",
"extensionBizName": "apply table permission ALIYUN$example_user34bd203df59e91fe8fb5f1a00ebb0588@@v2",
"order": {
"operator": "205328183930****",
"applicationContents": [
{
"tenantId": "123456789012345",
"resource": {
"defSchema": "MaxCompute",
"defVersion": "v1.0.0",
"metaData": {
"workspace": "64010",
"project": "example_project",
"schema": "default",
"table": "example_table",
"threeTierModel": false
}
},
"grantee": {
"principalType": "RAM_USER",
"principalId": "205328183930****"
},
"accessTypes": [
"Select",
"Describe"
],
"expirationTime": 1792740522227
}
],
"applyReason": "Required for business queries"
}
},
"aliyunoriginalaccountid": "1234567890123456",
"specversion": "1.0",
"aliyuneventbusname": "example-bus",
"id": "2c11c9f1-930c-4f3d-9216-b81a58a193da",
"source": "acs.dataworks",
"time": "2026-07-23T07:28:41.221Z",
"aliyunregionid": "cn-beijing",
"type": "dataworks:ApprovalChange:ApprovalChangeBeforeCreateV2"
}
次の表は data フィールドを説明しています。
|
フィールド |
タイプ |
説明 |
|
eventType |
String |
固定値: |
|
eventCode |
String |
V2 拡張ポイントイベントコード。固定値: |
|
tenantId |
Long |
DataWorks テナント ID。 |
|
extensionBizId |
String |
一意の拡張ポイントビジネス ID。V2 イベントの場合、値は |
|
operator |
String |
リクエストを開始したユーザーの Base ID。 |
|
extensionBizName |
String |
拡張ポイントビジネスの表示名。このフィールドを一意のキーとして使用しないでください。 |
|
order |
Object |
セキュリティセンターのネイティブリクエストフォーム。タイプ: |
|
order.operator |
String |
リクエストを開始したユーザーの Base ID。 |
|
order.applicationContents |
Array |
このリクエストのリソース権限の詳細リスト。 |
|
order.applicationContents[].resource |
Object |
リクエストされたリソースのリソース定義情報。 |
|
order.applicationContents[].resource.defSchema |
String |
エンジンとリソースモデルを区別するリソース定義名。例: |
|
order.applicationContents[].resource.defVersion |
String |
リソース定義のバージョン。例: |
|
order.applicationContents[].resource.metaData |
Object |
リソース定義によって整理された階層的なメタデータ。フィールドは |
|
order.applicationContents[].grantee |
Object |
権限を付与されたプリンシパル。 |
|
order.applicationContents[].grantee.principalType |
String |
権限を付与されたプリンシパルのタイプ。例: |
|
order.applicationContents[].grantee.principalId |
String |
権限を付与されたプリンシパルの ID。フォーマットは |
|
order.applicationContents[].accessTypes |
Array<String> |
ユーザーがリクエストした権限のリスト。例: |
|
order.applicationContents[].expirationTime |
Long |
権限の有効期限。ミリ秒単位の UNIX タイムスタンプ。 |
|
order.applyReason |
String |
リクエストの理由。 |
事前チェックイベントでは、applicationContents[] はまだ永続化されていません。そのため、contentId、processInstanceId、resourceIndex、finalAccessTypes、status、createTime、および updateTime は通常存在しません。JSON パーサーは不明なフィールドを無視し、このドキュメントでオプションとしてマークされているフィールドが存在しないことを許可する必要があります。
V1 イベントのメンテナンスと移行ガイド
メンテナンス期限
DataWorks セキュリティセンター V1 イベント (approval-change-before-create、approval-change-created、approval-change-finished) は、2026 年 12 月 31 日までメンテナンスされます。2027 年 1 月 1 日以降:
-
V1 イベントに新しいリソースタイプ、フィールド、または互換性機能は追加されません。
-
新しいリソースタイプは V2 イベントを通じてのみ送信され、V1 イベントにはバックフィルされません。
-
メンテナンスの終了は、V1 イベントの配信が直ちに停止することを意味するものではありません。V1 イベントの最終的な配信停止日は別途発表されます。最新情報については公式サイトをご確認ください。
V1 / V2 イベントマッピング
|
V1 イベント (eventCode) |
対応する V2 イベント (eventCode) |
主な変更点 |
|
|
|
メッセージ本文 |
|
|
|
|
|
|
|
上記と同じ。完了イベントは、承認プロセスが終了したことのみを示します。基盤となるリソースの権限付与が正常に実行されたことを意味するものではありません。 |
移行に関する注意点
-
個別のサブスクリプション:V1 と V2 は異なる
eventCode値を使用します。メンテナンス期間中、同じ承認操作に対して両方のイベントセットが送信されます。同じビジネスステージの重複処理を避けるために、eventCodeによって 2 つのセットを区別してください。 -
個別の解析:EventBridge を通じてサブスクライブする場合、EventBridge イベントタイプ (Type) フィールドでターゲットイベントをフィルタリングします。V1 と V2 は異なる CloudEvents タイプ値を持っています。それぞれに個別のサブスクリプションルールを作成してください。
-
リソース解析の互換性:V2 イベントのリソース情報を解析する際は、
resource.defSchema+resource.defVersionを信頼できる情報源として使用してください。resource.metaData内の不明なフィールドを許可してください。互換性のある解析を実装してください (例外をスローするのではなく、不明なdefSchema値をスキップします)。 -
相関キーの選択:リクエストの相関キーとして
processIdを、リクエスト内容の相関キーとしてcontentIdを使用してください。 -
バイパス検証:本番環境の消費を切り替える前に、V2 メッセージをテスト環境にルーティングし、V1 との結果を比較してください。
付録:付与内容リスト (MaxCompute)
セキュリティセンターイベントでは、承認またはテーブル権限リクエストがトリガーされると、DataWorks は EventBridge に送信されるイベントメッセージに arrayData を追加します。assignmentCategory タイプが MaxCompute の場合、arrayData の内容は次のようになります:
{
"ownerBaseId":"1822931104031845",
"objectType":"TABLE",
"odpsTable":"oracle_************",
"envType":1,
"projectGuid":"odps.***********",
"objectGuid":"odps.******.******",
"tenantId":0,
"objectName":"oracle_******",
"ownerAccountName":"ALIYUN***************",
"odpsProject":"dataworks******",
"projectName":"dataworks******",
"actions":[
"Select",
"Describe"
],
"projectId":9***4,
"workspaceId":"9***4"
}
次の表にフィールドを説明します。
|
フィールド |
タイプ |
説明 |
|
ownerBaseId |
String |
テーブル所有者の BaseID。 |
|
ownerAccountName |
String |
テーブル所有者の名前。 |
|
objectType |
String |
オブジェクトタイプ。 |
|
odpsTable |
String |
テーブル名。 |
|
envType |
String |
テーブルの環境。 |
|
projectGuid |
String |
プロジェクトの GUID。 |
|
objectGuid |
String |
オブジェクトの GUID。 |
|
objectName |
String |
オブジェクト名。 |
|
odpsProject |
String |
ODPS プロジェクト名。 |
|
projectName |
String |
プロジェクトコード。 |
|
projectId |
Long |
プロジェクト ID。 |
|
workspaceId |
String |
ワークスペース ID。 |
|
actions |
Array |
アクションタイプのリスト。 |
付録:付与内容リスト (データサービス)
セキュリティセンターイベントでは、承認またはテーブル権限リクエストがトリガーされると、DataWorks は EventBridge に送信されるイベントメッセージに arrayData を追加します。assignmentCategory タイプが DataService の場合、arrayData の内容は次のようになります:
{
"resourceId":"DsApiDeploy/******/workspaceId/******/dsDeployId/******",
"ownerName":"******",
"resourceVersion":1,
"name":"api_api",
"dsDeployId":"******",
"workspaceName":"da_******",
"id":"******",
"type":1,
"ownerId":"19****735",
"url":"https://******.data.aliyun.com/?projectId=******&type=api&id=******&version=***&defaultProjectId=******",
"workspaceId":"******"
}
次の表では、フィールドについて説明します。
|
フィールド |
タイプ |
説明 |
|
resourceId |
String |
リソース ID。 |
|
ownerName |
String |
リソース所有者の名前。 |
|
resourceVersion |
Long |
リソースバージョン。 |
|
name |
String |
リソース名。 |
|
dsDeployId |
String |
データサービスデプロイメント ID。 |
|
workspaceName |
String |
ワークスペース名。 |
|
id |
String |
一意のリソース ID。 |
|
type |
String |
リソースタイプ。有効な値:
|
|
ownerId |
String |
リソース所有者の BaseID。 |
|
url |
String |
データサービス URL。 |
|
workspaceId |
String |
ワークスペース ID。 |
Data Quality イベントリスト
イベントリスト
|
イベントタイプ |
イベント (およびトリガー操作) |
標準イベント |
拡張ポイントイベント |
EventBridge イベントタイプ (Type) |
拡張イベントコード (eventCode) |
|
データ品質チェック |
チェック結果のフィードバック
|
|
|
|
|
|
チェック完了
|
|
|
|
|
|
|
データ品質ルールの事前イベント |
データ品質ルールの一括作成事前イベント |
|
|
|
|
|
データ品質ルールの一括更新事前イベント |
|
|
|
|
|
|
データ品質ルールの一括削除事前イベント |
|
|
|
|
|
|
データ品質ルールの更新事前イベント |
|
|
|
|
|
|
データ品質モニタリング事前イベント |
データ品質モニタリング作成事前イベント |
|
|
|
|
|
データ品質モニタリング更新事前イベント |
|
|
|
|
|
|
データ品質モニタリングクローン事前イベント |
|
|
|
|
|
|
データ品質モニタリング一括削除事前イベント |
|
|
|
|
|
|
データ品質モニタリングアラートサブスクリプション事前イベント |
データ品質モニタリングアラートサブスクリプション作成事前イベント |
|
|
|
create-data-quality-evaluation-task-notification |
|
データ品質モニタリングアラートサブスクリプション更新事前イベント |
|
|
|
|
|
|
データ品質モニタリングアラートサブスクリプション削除事前イベント |
|
|
|
|
メッセージフォーマット
データ品質チェック
-
次の例は、データ品質チェック結果フィードバックイベントのメッセージ本文のフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "data": { "ruleCheckId": 521771452, "feedbackContent": "Skip", "ruleId": 28610334, "createUser": "110755000425****", "taskId": "167644814****9a26ecf4063a88797", "beginTime": "1676448145000", "envType": "ODPS", "projectName": "test_mc_2303_kongjian", "projectId": 9***4, "tenantId": 28***656 } }次の表に主要なフィールドを説明します。
フィールド
タイプ
説明
ruleId
Long
データ品質ルール ID。
ruleCheckId
Long
チェック結果の自動インクリメント ID。
feedbackContent
String
フィードバック内容。
createUser
String
フィードバックを提供した人のユーザー ID。
taskid
String
Data Quality タスクの ID。
beginTime
String
フィードバック時刻。
envType
String
ルールに関連付けられたテーブルのデータソースタイプ。有効な値:ODPS、EMR、および HOLO。
projectName
String
ルールに関連付けられたテーブルが属するデータソースの一意の識別子。
projectId
Long
DataWorks ワークスペース ID。
tenantId
Long
DataWorks テナント ID。
-
次の例は、データ品質チェック完了イベントのメッセージ本文のフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "data": { "projectId": 9***4, "tenantId": 28***656, "id": 52177****, "taskId": "1671***7a6", "entityId": 1562***, "ruleId": 28610334, "property": "-", "bizdate": "2023-02-09 00:00:00", "dateType": "YMD", "actualExpression": "ds\u003d20230210", "matchExpression": "ds\u003d$[yyyymmdd]", "blockType": 1, "checkResult": 0, "eventCode": "dqc-check-finished-event", "checkResultStatus": 0, "methodName": "table_count", "beginTime": "2023-02-15 20:14:48", "endTime": "2023-02-15 20:14:55", "timeConsuming": "7s", "externalType": "CWF2", "externalId": "triggerByManual", "discrete": false, "fixedCheck": true, "referenceValue": [ { "bizDate": "3000-12-31 00:00:00", "discreteProperty": "Table row count, 1-day difference", "value": 0.0, "singleCheckResult": 0 } ], "sampleValue": [ { "bizDate": "2023-02-09 00:00:00", "value": 3.0 } ], "trend": "\u003e\u003d", "expectValue": 0.0, "op": "\u003e\u003d", "projectName": "test_mc_2303_kongjian", "tableName": "sx_dim_1209_001", "templateId": 47, "checkerType": 0, "ruleName": "Previous day difference", "isPrediction": false, "feedbackStatus": 0, "whetherToFilterDirtyData": false } }フィールドの説明は次のとおりです:
フィールド
タイプ
説明
id
Long
現在のチェックプロセスのプライマリキー ID。ルールチェックがトリガーされるたびに、新しいプライマリキー ID レコードが生成されます。
projectId
Long
DataWorks ワークスペース ID。
tenantId
Long
DataWorks テナント ID。
taskId
String
チェックタスクの ID。
entityId
Long
パーティション式の ID。
ruleId
Long
ルール ID。
property
String
ルールプロパティのフィールド。チェック対象のデータソーステーブルの列名です。
bizdate
Long
ビジネス日付。チェック対象のビジネスエンティティがオフラインデータの場合、ビジネス日付は通常、チェック実行日の前日です。
dateType
String
スケジュールのタイプ。通常は YMD で、年次、月次、日次タスクを表します。
actualExpression
String
チェック対象のデータソーステーブルの実際のパーティション。
matchExpression
String
パーティション式。
blockType
Integer
チェックルールの強度。強度はルールの重要性を示します。有効な値:
-
1:強制ルール。
-
0:弱ルール。
ビジネス要件に基づいて、重要なルールを強制ルールとして設定できます。強制ルールが赤色のアラートをトリガーした場合、定期タスクはブロックされます。
checkResult
Integer
チェック結果のステータス。有効な値:
-
-2:チェックスキップ
-
-1:チェック例外
-
0:チェック合格
-
1:オレンジ色のしきい値がトリガーされました
-
2:赤色のしきい値がトリガーされました
methodName
String
サンプルデータを収集するためのメソッドには、avg、count、sum、min、max、count_distinct、user_defined、table_count、table_size、table_dt_load_count、table_dt_refuseload_count、null_value、null_value/table_count、(table_count-count_distinct)/table_count、および table_count-count_distinct が含まれます。
beginTime
Long
チェックの開始時刻。
endTime
Long
チェック結果をクエリするための終了時刻。
timeConsuming
String
チェックタスクにかかった時間。
externalType
String
スケジューリングシステムのタイプ。現在、CWF2 のみがサポートされています。externalType が空の場合、タスクは手動の試行タスクです。
externalId
String
-
externalType が CWF2 の場合、このフィールドは定期タスクのノード ID を示します。
-
externalType が空の場合、値は triggerByManual であり、タスクが手動でトリガーされたことを示します。
discrete
Boolean
離散チェックが使用されるかどうかを示します。有効な値:
-
true:離散チェックが使用されます。
-
false:離散チェックは使用されません。
fixedCheck
Boolean
固定値チェックが使用されるかどうかを示します。有効な値:
-
true:固定値チェックが使用されます。
-
false:固定値チェックは使用されません。
referenceValue
過去のサンプル値。
bizDate
Long
ビジネス日付。チェック対象のビジネスエンティティがオフラインデータの場合、ビジネス日付は通常、チェック実行日の前日です。
discreteProperty
String
GROUP BY 操作後のサンプル列の値。たとえば、性別列に GROUP BY を適用した場合、DiscreteProperty の値は男性、女性、null になります。
value
Decimal
サンプル値。
singleCheckResult
Integer
チェック結果の文字列表現。
sampleValue
現在使用されているサンプル。
bizDate
Long
ビジネス日付。チェック対象のビジネスエンティティがオフラインデータの場合、ビジネス日付は通常、チェック実行日の前日です。
value
Decimal
サンプル値。
trend
String
チェック結果の傾向。
expectValue
Double
期待値。
op
String
比較演算子。
projectName
String
Data Quality チェックが実行されるコンピュートエンジンまたはデータソースの名前。
tableName
String
チェック対象のテーブルの名前。
templateId
Integer
使用されたチェックテンプレートの ID。
checkerType
Integer
チェッカーのタイプ。
ruleName
String
ルールの名前。
isPrediction
Boolean
結果が予測であるかどうかを示します。有効な値:
-
true:結果は予測です。
-
false:結果は予測ではありません。
comment
String
チェックルールの説明。
eventCode
String
拡張機能イベントコード。
-
データ品質ルールの拡張ポイントイベント (一括作成、更新、削除)
-
次の例は、データ品質ルールの一括作成拡張ポイントイベントのメッセージエンティティフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "data": { "eventCode": "batch-create-data-quality-rules", "projectId": 30***03, "tenantId": 28***656, "operator": "19***735", "operationTime": 1734505954897, "dataQualityTaskId": 1001, "target": { "databaseType": "maxcompute", "tableGuid": "odps.project_demo.tb_table_demo" }, "rules": [ { "name": "Table row count greater than 0", "enabled": true, "severity": "High", "description": "Data quality rule creation operation check test", "templateCode": "system:table:table_count:fixed:0", "samplingConfig": { "metric": "count" }, "checkingConfig": { "type": "fixed", "thresholds": { "expected": { "expression": "$checkValue > 0" }, "critical": { "expression": "$checkValue <= 0" } } } } ] } }次の表に主要なフィールドを説明します。
フィールド
タイプ
説明
projectId
List
DataWorks ワークスペース ID。
operator
String
オペレーターの UID。
operationTime
Long
操作時間。
dataQualityTaskId
Long
ルールに関連付けられたデータ品質モニタリング ID。このフィールドは空にすることができます。
target
DataQualityTarget
データ品質ルールのモニタリング対象。
databaseType
String
テーブルデータセットのデータベースタイプ。
-
MaxCompute
-
EMR
-
CDH
-
Hologres
-
AnalyticDB for PostgreSQL
tableGuid
String
データマップ内のテーブルの一意の ID。
rules
List
データ品質ルールのリスト。
name
String
ルール名。
enabled
Boolean
ルールが有効かどうかを示します。
severity
String
ルールのビジネス上の重要度。ページの強制ルールと弱ルールに対応します。
-
High
-
Normal
description
String
ルールの説明。
templateCode
String
ルールの作成時に参照されるルールテンプレート。
samplingConfig
SamplingConfig
サンプル収集に必要な設定。
metric
String
サンプリングメトリック名。
-
Count:テーブルの行数
-
Min:列の最小値
-
Max:列の最大値
-
Avg:列の平均値
-
DistinctCount:列の個別値の数
-
DistinctPercent:列の個別値と行数の比率
-
DuplicatedCount:列の重複値の数
-
DuplicatedPercent:列の重複値と行数の比率
-
TableSize:テーブルサイズ
-
NullValueCount:列の値が null の行数
-
NullValuePercent:null 列値の割合
-
GroupCount:列の値で集約した後の各値のデータ行数
-
CountNotIn:列挙値と一致しない行数
-
CountDistinctNotIn:列挙値と一致しない個別値の数
-
UserDefinedSql:カスタム SQL によるサンプル収集
checkingConfig
CheckingConfig
サンプル検証設定。
type
String
しきい値計算方法。
-
Fixed
-
Fluctation
-
FluctationDiscreate
-
Auto
-
Average
-
Variance
thresholds
Thresholds
しきい値設定。
expected
Threshold
期待されるしきい値設定。
expression
String
しきい値式。
critical
Threshold
重大警告のしきい値設定。
-
-
次の例は、データ品質ルールの一括更新拡張ポイントイベントのメッセージエンティティフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "data": { "eventCode": "update-data-quality-rule", "projectId": 30***03, "tenantId": 28***656, "operator": "19***735", "operationTime": 1734505954897, "id": 100001, "name": "Table row count greater than 0", "enabled": true, "severity": "High", "description": "Data quality rule creation operation check test", "templateCode": "system:table:table_count:fixed:0", "samplingConfig": { "metric": "count" }, "checkingConfig": { "type": "fixed", "thresholds": { "expected": { "expression": "$checkValue > 0" }, "critical": { "expression": "$checkValue <= 0" } } } } }次の表に主要なフィールドを説明します。
フィールド
タイプ
説明
eventCode
String
イベントコード。
projectId
Long
ワークスペース ID。
tenantId
Long
テナント ID。
operator
String
ユーザー UID。
operationTime
Long
操作時間。
id
Long
ルール ID。
name
String
ルール名。
enabled
Boolean
ルールが有効かどうかを示します。
true:有効。
false:無効。
severity
String
ルールのビジネス上の重要度 (ページの強制ルールと弱ルールに対応)。
-
High
-
Normal
description
String
ルールの説明。
templateCode
String
パーティションテーブルのパーティション設定。
samplingConfig
SamplingConfig
サンプル収集に必要な設定。
metric
String
サンプリングメトリック名。
-
Count:テーブルの行数
-
Min:列の最小値
-
Max:列の最大値
-
Avg:列の平均値
-
DistinctCount:列の個別値の数
-
DistinctPercent:列の個別値とデータ行数の比率
-
DuplicatedCount:列の重複値の数
-
DuplicatedPercent:列の重複値とデータ行数の比率
-
TableSize:テーブルサイズ
-
NullValueCount:列の値が null の行数
-
NullValuePercent:列の値が null の行の割合
-
GroupCount:列の値で集約した後の各値のデータ行数
-
CountNotIn:列挙値と一致しない行数
-
CountDistinctNotIn:列挙値と一致しない個別値の数
-
UserDefinedSql:カスタム SQL によるサンプル収集
checkingConfig
CheckingConfig
サンプル検証設定。
type
String
しきい値計算方法。
-
Fixed
-
Fluctation
-
FluctationDiscreate
-
Auto
-
Average
-
Variance
thresholds
Thresholds
しきい値設定。
expected
Threshold
期待されるしきい値設定。
expression
String
しきい値式。
critical
Threshold
重大アラートのしきい値設定。
-
-
次の例は、データ品質ルールの一括削除事前イベントのメッセージ本文のフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "data": { "eventCode": "batch-delete-data-quality-rules", "ids": [ 10***01, 10***02, 10***03 ], "projectId": 30***03, "tenantId": 524***4736, "operator": "19***735", "operationTime": 1734505954897 } }次の表に主要なフィールドを説明します。
フィールド名
フィールドタイプ
説明
projectId
List
DataWorks ワークスペース ID。
operator
String
オペレーターの UID。
operationTime
Long
操作時刻。
ids
List
削除されたデータ品質ルールの ID のリスト。
tenantId
String
テナント ID。
eventCode
String
イベントコード。
-
次の例は、データ品質ルールの更新事前イベントのメッセージ本文のフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "data": { "eventCode": "update-data-quality-rule", "projectId": 30***03, "tenantId": 524***4736, "operator": "110***3538", "operationTime": 1734505954897, "id": 100001, "name": "Table row count greater than 0", "enabled": true, "severity": "High", "description": "Data quality rule creation operation check test", "templateCode": "system:table:table_count:fixed:0", "samplingConfig": { "metric": "count" }, "checkingConfig": { "type": "fixed", "thresholds": { "expected": { "expression": "$checkValue > 0" }, "critical": { "expression": "$checkValue <= 0" } } } } }次の表に主要なフィールドを説明します。
フィールド名
フィールドタイプ
説明
eventCode
String
イベントコード。
projectId
Long
ワークスペース ID。
tenantId
Long
テナント ID。
operator
String
ユーザー UID。
operationTime
Long
操作時間
id
Long
ルール ID。
name
String
ルール名。
enabled
Boolean
ルールが有効かどうかを示します。
true:有効。
false:無効。
severity
String
ルールのビジネス上の重要度レベル (ページの強制ルールと弱ルールに対応)。
-
High
-
Normal
description
String
ルールの説明。
templateCode
String
パーティションテーブルのパーティション設定。
samplingConfig
SamplingConfig
サンプル収集に必要な設定。
metric
String
サンプリングメトリックの名前。
-
Count:テーブルの行数
-
Min:列の最小値
-
Max:列の最大値
-
Avg:列の平均値
-
DistinctCount:列の個別値の数
-
DistinctPercent:列の個別値とデータ行数の比率
-
DuplicatedCount:列の重複値の数
-
DuplicatedPercent:列の重複値とデータ行数の比率
-
TableSize:テーブルサイズ
-
NullValueCount:列の値が null の行数
-
NullValuePercent:列の値が null の行の割合
-
GroupCount:列の値で集約した後の各値のデータ行数
-
CountNotIn:列挙値と一致しない行数
-
CountDistinctNotIn:列挙値と一致しない個別値の数
-
UserDefinedSql:カスタム SQL によるサンプル収集
checkingConfig
CheckingConfig
サンプル検証設定。
type
String
しきい値計算方法。
-
Fixed
-
Fluctation
-
FluctationDiscreate
-
Auto
-
Average
-
Variance
thresholds
Thresholds
しきい値設定。
expected
Threshold
期待されるしきい値設定。
expression
String
しきい値式。
critical
Threshold
重大アラートのしきい値設定。
-
データ品質モニタリング事前イベント (作成、更新、クローン、一括削除)
-
次の例は、データ品質モニタリングの作成および更新事前イベントのメッセージ本文のフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "data": { "eventCode": "create-data-quality-evaluation-task", "name": "Table data accuracy monitoring", "description": "After the scheduling instance that writes data to the table is successfully executed, trigger monitoring to check whether the output data meets expectations", "target": { "databaseType": "emr", "tableGuid": "an-emr-table-guid" }, "trigger": { "type": "ByScheduledTaskInstance", "taskIds": [ 1001, 1002 ] }, "dataSourceId": 201, "runtimeConf": "{ \"queue\": \"default\", \"sqlEngine\": \"HIVE_SQL\" }", "rules": [ { "name": "Table row count greater than 0", "enabled": true, "severity": "High", "description": "Data quality rule creation operation check test", "templateCode": "system:table:table_count:fixed:0", "samplingConfig": { "metric": "count" }, "checkingConfig": { "type": "fixed", "thresholds": { "expected": { "expression": "$checkValue > 0" }, "critical": { "expression": "$checkValue <= 0" } } } }, { "id": 100002 "name": "Table row count greater than 100", "checkingConfig": { "type": "fixed", "thresholds": { "expected": { "expression": "$checkValue > 100" }, "critical": { "expression": "$checkValue <= 100" } } } } ], "hooks": [ { "type": "BlockTaskInstance", "condition": "(${severity} == \"High\" AND ${status} == \"Critical\") OR (${severity} == \"High\" AND ${status} == \"Error\")" } ], "notifications": { "condition": "(${severity} == \"High\" AND ${status} == \"Warned\") OR (${severity} == \"Normal\" AND ${status} == \"Critical\") OR (${severity} == \"Normal\" AND ${status} == \"Warned\") OR (${severity} == \"Normal\" AND ${status} == \"Error\")", "notifications": [ { "channels": [ "Mail", "Sms" ], "notificaionReceivers": [ { "receiverType": "AliUid", "receiverValues": [ "1107550004253538", "51107550004253538" ] } ] }, { "channels": [ "Dingding" ], "notificaionReceivers": [ { "receiverType": "DingdingUrl", "receiverValues": [ "https://api.dingding.com/message-boxes/b1/messages", "https://api.dingding.com/message-boxes/b2/messages" ], "extension": "{ \"atAll\": true }" } ] } ] }, "projectId": 30***03, "tenantId": 524***4736, "operator": "110***3538", "operationTime": 1734505954897 } }次の表に主要なフィールドを説明します。
フィールド名
フィールドタイプ
説明
eventCode
String
イベントコード。
name
String
データ品質モニタリングタスクの名前。
description
String
データ品質評価タスクの説明。
target
DataQualityTarget
データ品質評価タスクのモニタリング対象。
databaseType
String
テーブルタイプのデータセットのテーブルが属するデータベースタイプ。
-
MaxCompute
-
EMR
-
CDH
-
Hologres
-
AnalyticDB for PostgreSQL
tableGuid
String
データマップ内のテーブルの一意の ID。
trigger
DataQualityEvaluationTaskTrigger
データ品質評価タスクのトリガー設定。
type
String
データ品質評価タスクをトリガーできるイベントのタイプ。
-
ByScheduledTaskInstance:定期インスタンスが正常に実行されたときにトリガーされます。このオプションはパブリッククラウドシナリオでのみサポートされます。
-
ByManual:手動でトリガーされます。
taskIds
Array
type=ByScheduledTaskInstance の場合に有効です。正常に実行された後にタスクをトリガーできる定期ノードインスタンスを指定します。
dataSourceId
Long
データ品質評価タスクの実行時に使用するデータソース。
runtimeConf
String
データソースを使用するための設定。現在、EMR YARN キューの指定と、EMR テーブルを収集するための SQL エンジンを SPARK-SQL に設定することのみがサポートされています。
rules
List
データ品質ルールのリスト。パラメーターの詳細については、「データ品質ルール事前イベントパラメーター」をご参照ください。
hooks
Array
データ品質評価タスクインスタンスのライフサイクル中のコールバック設定。現在、定期タスクインスタンスをブロックするフックが 1 つだけサポートされています。
type
String
フォローアップアクションのタイプ。
BlockTaskInstance:DataWorks タスクインスタンスの実行をブロックします。
condition
String
フックのトリガー条件。
notifications
Array
通知設定。
projectId
Long
ワークスペース ID。
tenantId
Long
テナント ID。
operator
String
オペレーターの UID。
operationTime
Long
操作時間
-
-
次の例は、データ品質モニタリングクローン拡張ポイントイベントのメッセージエンティティフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "data": { "eventCode": "clone-data-quality-evaluation-task", "id": 10001, "targets": [ { "databaseType": "emr", "tableGuid": "an-emr-table-guid" }, { "databaseType": "emr", "tableGuid": "another-emr-table-guid" } ], "projectId": 9***4, "tenantId": 28***656, "operator": "19***735", "operationTime": 1734505954897 } }次の表に主要なフィールドを説明します。
フィールド
タイプ
説明
projectId
Long
DataWorks ワークスペース ID。
tenantId
String
テナント ID。
operator
String
オペレーターの UID。
operationTime
Long
操作時間。
targets
List
ルールがクローンされるデータ品質モニタリング対象。
databaseType
String
テーブルタイプのデータセットのテーブルが属するデータベースタイプ。
-
MaxCompute
-
EMR
-
CDH
-
Hologres
-
AnalyticDB for PostgreSQL
tableGuid
String
データマップ内のテーブルの一意の ID。
id
Long
クローン元のソースデータ品質モニタリングルールの ID。
eventCode
String
イベントコード。
-
-
次の例は、データ品質モニタリングの一括削除拡張ポイントイベントのメッセージエンティティフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "data": { "eventCode": "batch-delete-data-quality-evaluation-tasks", "ids": [ 10001, 10002 ], "projectId": 9***4, "tenantId": 28***656, "operator": "19***735", "operationTime": 1734505954897 } }次の表に主要なフィールドを説明します。
フィールド
タイプ
説明
projectId
Long
DataWorks ワークスペース ID。
operator
String
オペレーターの UID。
operationTime
Long
操作時間。
ids
List
削除されたデータ品質モニタリング ID のリスト。
tenantId
String
テナント ID。
eventCode
String
イベントコード。
データ品質モニタリングアラートサブスクリプション拡張ポイントイベント (作成、更新、削除)
-
次の例は、データ品質モニタリングアラートサブスクリプションの作成および削除拡張ポイントイベントのメッセージエンティティフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "data": { "eventCode": "create-data-quality-evaluation-task-notification", "dataQualityEvaluationTaskId": 10001, "channel": "sms", "receiverValue": "1107***38", "projectId": 30***03, "operator": "110***3538", "operationTime": 1734505954897 } }次の表に主要なフィールドを説明します。
フィールド
タイプ
説明
projectId
Long
DataWorks ワークスペース ID。
operator
String
オペレーターの UID。
operationTime
Long
操作時間。
dataQualityEvaluationTaskId
Long
データ品質モニタリング ID。
channel
String
サブスクリプションメッセージを送信するためのチャネルタイプ。
-
Mail - Eメール
-
Sms - SMS
-
Phone - 電話
-
Feishu - Feishu
-
Weixin - WeChat
-
Dingding - DingTalk
-
Webhook - カスタム Webhook
receiverValue
String
サブスクリプションメッセージを送信するための特定のターゲット。
eventCode
String
イベントコード。
-
-
次の例は、データ品質モニタリング更新拡張ポイントイベントのメッセージエンティティフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "data": { "eventCode": "update-data-quality-evaluation-task-notification", "dataQualityEvaluationTaskId": 10001, "currentChannel": "sms", "currentReceiverValue": "1107***538", "updatedChannel": "sms", "updatedReceiverValue": "1107***538", "projectId": 30***03, "operator": "110***3538", "operationTime": 1734505954897 }次の表に主要なフィールドを説明します。
フィールド
タイプ
説明
projectId
Long
DataWorks ワークスペース ID。
operator
String
オペレーターの UID。
operationTime
Long
操作時間。
dataQualityEvaluationTaskId
Long
データ品質モニタリング ID。
currentChannel
String
更新対象のサブスクリプションメッセージターゲットのチャネルタイプ。
-
Mail - Eメール
-
Sms - SMS
-
Phone - 電話
-
Feishu - Feishu
-
Weixin - WeChat
-
Dingding - DingTalk
-
Webhook - カスタム Webhook
currentReceiverValue
String
更新対象のサブスクリプションメッセージの特定のターゲット。
updatedChannel
String
更新後のサブスクリプションメッセージターゲットのチャネルタイプ。
-
Mail - Eメール
-
Sms - SMS
-
Phone - 電話
-
Feishu - Feishu
-
Weixin - WeChat
-
Dingding - DingTalk
-
Webhook - カスタム Webhook
updatedReceiverValue
String
更新後のサブスクリプションメッセージの特定のターゲット。
eventCode
String
イベントコード。
-
テナントレベルのイベント
テナントレベルのモジュールによって生成されるイベントはテナントレベルのイベントです。たとえば、コンソールからワークスペースが削除されたときに生成されるイベントなどです。以下のイベントリストを使用して、どのイベントが標準イベントで、どれが拡張ポイントイベントであるか、およびそれらのメッセージフォーマットを識別します。
以下のメッセージフォーマットタブには、一部のコンテンツのみが含まれています。EventBridge または Function Compute に送信される完全なメッセージについては、「付録:メッセージフォーマット」をご参照ください。
コンソールイベントリスト
イベントリスト
|
イベントタイプ |
イベント (およびトリガー操作) |
標準イベント |
拡張ポイントイベント |
EventBridge イベントタイプ (Type) |
拡張機能イベントタイプ (eventCode) |
|
ワークスペースの削除 |
ワークスペース削除拡張ポイントイベント |
|
|
|
|
|
ワークスペース削除後イベント |
|
|
|
|
メッセージフォーマット
メッセージエンティティフォーマット:ワークスペース削除イベント
-
次の例は、テナントのワークスペース削除拡張ポイントイベントのメッセージエンティティフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "data": { "eventCode": "delete-project", "projectId": 7***7, // ワークスペース ID "tenantId": 2807****0784, // テナント ID "operator": "19***735 }次の表にフィールドを説明します:
フィールド
タイプ
説明
operator
String
DataWorks ワークスペースを削除したユーザーの UID。
projectId
Long
削除する DataWorks ワークスペースの ID。
tenantId
Long
削除するワークスペースのテナント ID。
eventCode
String
拡張機能イベントコード。
-
次の例は、テナントのワークスペース削除の事後イベントのメッセージ本文のフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "data": { "eventCode": "project-deleted", "tenantId": 28***656, "blockBusiness": false, "projectName": "test2", "projectId": 9***4, "operator": "19***735", "timestamp": 1702260556896 } }フィールドの説明は次のとおりです:
フィールド
タイプ
説明
operator
String
DataWorks ワークスペースを削除したユーザーの UID。
projectId
Long
削除する DataWorks ワークスペースの ID。
projectName
String
削除する DataWorks ワークスペースの名前。
tenantId
Long
削除するワークスペースが属するテナントの ID。
timestamp
Long
メッセージが送信されたときのタイムスタンプ。
eventCode
String
拡張機能イベントコード。
データアップロード & ダウンロードイベントリスト
イベントリスト
|
イベントタイプ |
イベント (およびトリガー操作) |
標準イベント |
拡張ポイントイベント |
EventBridge イベントタイプ (Type) |
拡張イベントコード (eventCode) |
|
データダウンロードとアップロード |
データダウンロードの事前イベント - ファイル生成 |
|
|
dataworks:ResourcesDownload:DownloadResources |
download-resources |
|
データダウンロードの事前イベント - ファイルダウンロード |
|
|
dataworks:ResourcesDownload:DownloadResourcesExecute |
download-resources-execute |
|
|
データアップロードの事前イベント |
|
|
dataworks:ResourcesUpload:UploadDataToTable |
upload-data-to-table |
メッセージフォーマット
データダウンロードとアップロード
-
次の例は、データダウンロードの事前イベント - ファイル生成のメッセージ本文のフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "data": { "eventCode": "download-resources", "moduleType": "sqlx_query", "operatorBaseId": "123936573******", "operatorUid": "14931896037*******", "fileName": "File name.csv", "fileSize": 10241024, "datasourceId": "1111", "datasourceName": "odps_first", "queryDwProjectId": "9***4", "queryDwProjectName": "test_project", "dataRowSize": "123456", "sqlText": "select sku_code, sku_name from dim_sku", }フィールドの説明は次のとおりです:
フィールド
タイプ
説明
moduleType
String
ダウンロードされたデータのソース:
-
entity_transfer: からダウンロードされたデータ。
-
develop_query:Data Studio で SQL ステートメントを使用してクエリおよびダウンロードされたデータ。
-
sqlx_query: で SQL ステートメントを使用してクエリおよびダウンロードされたデータ。
-
dw_excel: からダウンロードされたデータ。
operatorBaseId
String
ダウンロード操作を実行したユーザーの BaseID。
operatorUid
String
ダウンロード操作を実行したユーザーの UID。
fileName
String
ダウンロードされたファイルの名前。
fileSize
Long
ダウンロードされたファイルのサイズ。
datasourceId
String
ダウンロードされたデータが属するデータソースの ID。
datasourceName
String
ダウンロードされたデータが属するデータソースの名前。
queryDwProjectId
String
ダウンロードされたデータが属する DataWorks ワークスペースの ID。
queryDwProjectName
String
ダウンロードされたデータが属する DataWorks ワークスペースの識別子。
dataRowSize
Long
ダウンロードされたデータ行数。
sqlText
String
データのクエリとダウンロードに使用される SQL コード。
eventCode
String
拡張機能イベントタイプ。
-
-
次の例は、データダウンロードの事前イベント - ファイルダウンロードのメッセージ本文のフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "aliyunaccountid": "1493189603770213", "aliyunpublishtime": "2023-12-11T02:10:00.194Z", "data": { "eventCode": "download-resources-execute", "moduleType": "sqlx_query", "operatorBaseId": "123936573******", "operatorUid": "14931896037*******", "fileName": "File name.csv", "fileSize": 10241024, "datasourceId": "1111", "datasourceName": "odps_first", "queryDwProjectId": "9***4", "queryDwProjectName": "test_project", "dataRowSize": "123456", "sqlText": "select sku_code, sku_name from dim_sku", "ip": "198.10.X.X" }, "aliyunoriginalaccountid": "149318960******", "specversion": "1.0", "aliyuneventbusname": "example-bus", "id": "2c3e41e5-3486-40ce-87d4-910f989cf2a7", "source": "acs.dataworks", "time": "2023-12-11T10:10:00.117Z", "aliyunregionid": "cn-shanghai", "type": "dataworks:ResourcesDownload:DownloadResourcesExecute" }次の表に主要なフィールドを説明します。
フィールド
タイプ
説明
moduleType
String
ダウンロードされたデータのソース:
-
entity_transfer: からダウンロードされたデータ。
-
develop_query:Data Studio で SQL ステートメントを使用してクエリおよびダウンロードされたデータ。
-
sqlx_query: で SQL ステートメントを使用してクエリおよびダウンロードされたデータ。
-
dw_excel: からダウンロードされたデータ。
operatorBaseId
String
ダウンロード操作を実行したユーザーの BaseID。
operatorUid
String
ダウンロード操作を実行したユーザーの UID。
fileName
String
ダウンロードされたファイルの名前。
fileSize
Long
ダウンロードされたファイルのサイズ。
datasourceId
String
ダウンロードされたデータが属するデータソースの ID。
datasourceName
String
ダウンロードされたデータが属するデータソースの名前。
queryDwProjectId
String
ダウンロードされたデータが属する DataWorks ワークスペースの ID。
queryDwProjectName
String
ダウンロードされたデータが属する DataWorks ワークスペースの識別子。
dataRowSize
Long
ダウンロードされたデータ行数。
sqlText
String
データのクエリとダウンロードに使用される SQL コード。
ip
String
ダウンロード操作を実行したユーザーの IP アドレス。
eventCode
String
拡張機能イベントタイプ。
-
-
次の例は、データアップロードの事前イベントのメッセージ本文のフォーマット (イベントメッセージの
dataフィールドの内容) を示しています。{ "datacontenttype": "application/json;charset=utf-8", "aliyunaccountid": "1493189603770213", "aliyunpublishtime": "2023-12-11T02:10:00.194Z", "data": { "eventCode": "upload-data-to-table", "uploadSourceType": "LOCAL", "optTableType": "CREATE", "targetEngineType": "MAXCOMPUTE", "writeType": "OVERWRITE", "conflictMode": "IGNORE", "operatorBaseId": "12312*****", "operatorUid": "1222222*****", "datasourceId": "1111", "datasourceName": "odps_first", "tableGuid": "odps.mc_project.test_table", "queryDwProjectId": "9***4", "queryDwProjectName": "test_project", "fileSize": 123456 }, "aliyunoriginalaccountid": "149318960******", "specversion": "1.0", "aliyuneventbusname": "example-bus", "id": "2c3e41e5-3486-40ce-87d4-910f989cf2a7", "source": "acs.dataworks", "time": "2023-12-11T10:10:00.117Z", "aliyunregionid": "cn-shanghai", "type": "dataworks:ResourcesUpload:UploadDataToTable" }フィールドの説明は次のとおりです:
フィールド
タイプ
説明
uploadSourceType
String
アップロードされたデータのソース:
-
LOCAL:ローカルファイルからデータをアップロードします。
-
OSS:OSS ファイルからデータをアップロードします。
-
DW_EXCEL:DataWorks の からデータをアップロードします。
-
HTTP:HTTP ファイルからデータをアップロードします。
optTableType
String
指定されたエンジンデータソースの既存のテーブルまたは新しいテーブルにデータをアップロードするかどうかを指定します。有効な値:
-
CREATE:新しいテーブルにデータをアップロードします。
-
IMPORT:既存のテーブルにデータをアップロードします。
targetEngineType
String
データがアップロードされるエンジンのタイプ。有効な値:
-
MaxCompute
-
EMR Hive
-
Hologres
writeType
String
宛先テーブルにデータを書き込む方法。有効な値:
-
OVERWRITE:テーブル内の既存のデータを上書きします。
-
APPEND:アップロードされたデータを宛先テーブルに追加します。
conflictMode
String
データアップロードの主キー競合解決ポリシー:
-
IGNORE:主キー競合が発生した場合、アップロードされたデータは無視されます。
-
REPLACE:主キー競合が発生した場合、競合する行が最初に削除され、その後アップロードされたデータがその行に挿入されます。アップロードされたデータで指定されていない列は NULL に設定されます。
-
UPDATE:アップロードされたデータは元のテーブルデータを上書きします。アップロードされたデータで指定された列のみが上書きされ、指定されていない列は変更されません。
operatorBaseId
String
アップロード操作を実行したユーザーの BaseID。
operatorUid
String
アップロード操作を実行したユーザーの UID。
datasourceId
String
データがアップロードされるデータソースの ID。
datasourceName
String
データがアップロードされるデータソースの名前。
tableGuid
String
テーブルの GUID。例:
-
MaxCompute:
odps.maxcomputeProject.tableName。 -
EMR_Hive:
emr_hive.emrClusterId.schema.tableName。 -
Holo:
holo.hologresInstanceId.database。
queryDwProjectId
String
テーブルが属する DataWorks ワークスペースの ID。
queryDwProjectName
String
テーブルが属する DataWorks ワークスペースの名前。
fileSize
Long
アップロードされたファイルのサイズ (バイト単位)。
eventCode
String
拡張機能イベントコード。
-
付録:メッセージフォーマット
EventBridge のメッセージフォーマット
Open Event を設定し、イベント配信チャネルを追加した後、DataWorks でワークスペースレベルまたはテナントレベルのイベントがトリガーされると、イベントは EventBridge で設定されたイベントタイプ (Type) に基づいてフィルタリングされます。以下は、DataWorks がイベント配信チャネルを通じて EventBridge に送信するメッセージフォーマットです。
{
"datacontenttype": "application/json;charset=utf-8",// data パラメーターのコンテンツフォーマット。datacontenttype には application/json のみがサポートされています。
"data": {
// メッセージ内容はメッセージタイプによって異なります。以下の 2 つのフィールドはメッセージ内で固定です。イベントメッセージについては、前のセクションをご参照ください。
"tenantId": 28378****10656,// テナント ID。各 Alibaba Cloud アカウントは DataWorks のテナントに対応し、各テナントには独自のテナント ID があります。この値は、DataWorks の Data Studio の右上隅にあるユーザー情報で確認できます。
"eventCode": "xxxx"//
},
"id": "539fd8f4-4ea1-4625-aa8b-6c906674****",// イベント ID。イベントを一意に識別する値。
"source": "acs.dataworks",// イベントソース。イベントを提供するサービスです。これは、メッセージが DataWorks によってプッシュされたことを示します。
"specversion": "1.0",
"subject": "",
"time": "2020-11-19T21:04:41+08:00",// イベントが生成された時刻。
"type": "dataworks:InstanceStatusChanges:InstanceStatusChanges",// イベントタイプ。このイベントタイプを使用して、EventBridge コンソールで DataWorks によってプッシュされたすべてのメッセージをフィルタリングできます。Type の値はイベントごとに異なります。さまざまなイベントメッセージタイプについては、前のセクションをご参照ください。
"aliyunaccountid": "123456789098****",// Alibaba Cloud アカウント ID。
"aliyunpublishtime": "2020-11-19T21:04:42.179PRC",// EventBridge がイベントを受信した時刻。
"aliyuneventbusname": "example-bus",// DataWorks イベントメッセージを受信するために使用される EventBridge イベントバスの名前。
"aliyunregionid": "cn-hangzhou",// イベントが受信されたリージョン。
"aliyunpublishaddr": "172.25.XX.XX"
}完全なイベントメッセージには、メッセージ本文と、メッセージ ID、ソース、生成時刻などの基本情報が含まれます。次の表に重要なフィールドを説明します。
|
フィールド |
タイプ |
説明 |
|
data |
object |
メッセージ本文。メッセージフォーマットとフィールドの意味はイベントタイプによって異なります。詳細については、以下をご参照ください: Data Studio イベントメッセージフォーマット:Data Studio イベントリスト。 データ統合イベントメッセージフォーマット:データ統合イベントリスト。 オペレーションセンターイベントメッセージフォーマット:オペレーションセンターイベントリスト。 セキュリティセンターイベントメッセージフォーマット:セキュリティセンターイベントリスト。 Data Quality イベントメッセージフォーマット:Data Quality イベントリスト。 |
|
id |
String |
イベントメッセージの一意の ID。このフィールドはイベントメッセージを特定するために使用されます。 |
|
type |
String |
イベントタイプ。このフィールドはイベントソースに関連するイベントタイプを記述します。例:
このイベントタイプを使用して、EventBridge コンソールで DataWorks によってプッシュされたすべてのメッセージをフィルタリングできます。Type の値はイベントごとに異なります。さまざまなイベントメッセージタイプについては、前のセクションをご参照ください。 |
Function Compute のメッセージフォーマット
DataWorks で Function Compute メソッドを使用して拡張機能を設定すると、対応する拡張ポイントイベントがトリガーされたときに、DataWorks は JSON 形式でイベントメッセージを Function Compute に送信します。以下は、Function Compute に送信されるメッセージフォーマットです。
{
"blockBusiness": true,
"eventCategoryType": "resources-download",// イベントカテゴリ。
"eventType": "upload-data-to-table",// イベントタイプ。
"extensionBizId": "job_6603***070",
"messageBody": {
// メッセージ内容はメッセージタイプによって異なります。以下の 2 つのフィールドはメッセージ内で固定です。イベントメッセージについては、前のセクションをご参照ください。
"tenantId": 28378****10656,// テナント ID。各 Alibaba Cloud アカウントは DataWorks のテナントに対応し、各テナントには独自のテナント ID があります。この値は、DataWorks の Data Studio の右上隅にあるユーザー情報で確認できます。
"eventCode": "xxxx"//
},
"messageId": "52d44ee7-b51f-4d4d-afeb-*******"// イベント ID。イベントを一意に識別する値。
}次の表に重要なフィールドを説明します。
|
フィールド |
タイプ |
説明 |
|
|
messageId |
String |
イベント ID。イベントを一意に識別する値。 |
|
|
messageBody |
DataWorks によってプッシュされた特定のイベントメッセージ。このフィールドは、拡張機能を開発する際に使用できます。このフィールドの内容はメッセージタイプによって異なります。 |
||
|
tenantId |
テナント ID。各 Alibaba Cloud アカウントは DataWorks のテナントに対応し、各テナントには独自のテナント ID があります。この値は、DataWorks の Data Studio の右上隅にあるユーザー情報で確認できます。 |
||
|
eventCode |
イベントコード。このフィールドは特定のタイプのイベントメッセージを識別します。各イベントタイプの eventCode については、イベントリストテーブルの拡張機能イベントコード (eventCode) 列をご参照ください。 |
||