すべてのプロダクト
Search
ドキュメントセンター

DataWorks:イベント一覧およびメッセージフォーマット

最終更新日:Mar 13, 2026

このトピックでは、DataWorks のイベントタイプ、メッセージフォーマット、およびフィールド定義について説明します。

概要

DataWorks では、イベントを「通常イベント」と「拡張ポイントイベント」の 2 種類に分類しています。分類の基準は、イベントが DataWorks 内部の操作をブロックできるかどうか、およびサブスクライブされたサービスが処理結果を返すことができるかどうかです。

  • 通常イベント:「オープンイベント (OpenEvent)」を介して通常イベントをサブスクライブできます。これらのイベントは、トリガーされた操作をブロックしません。

  • 拡張ポイントイベント:この種類のイベントをサブスクライブすると、「拡張機能 (Extensions)」機能を使用してカスタム応答を定義できます。操作がこの種類のイベントをトリガーすると、DataWorks は、カスタム拡張機能が結果を返すまで操作をブロックします。

このトピックでは、各モジュールでサポートされるイベント(カテゴリ[通常イベントまたは拡張ポイントイベント]、EventBridge タイプ拡張機能用 eventCode)について説明します。

  • タイプ: イベントメッセージをフィルターするためのフィールドです。「イベントメッセージのサブスクリプションを有効化」をご参照ください。

  • eventCode:特定のイベントを識別するコードです。ローカル開発中には、DataWorks から送信されるイベントメッセージのペイロードからこのコードを取得し、イベントを識別できます。

ワークスペースレベルのイベント

ワークスペースレベルのモジュールは、ワークスペースレベルのイベントを生成します。たとえば、DataStudio はノード実行時にイベントを生成し、オペレーションセンターは自動トリガーインスタンスのステータス変更時にイベントを生成します。「イベント一覧」の下記表を参照して、各モジュールでサポートされるイベント、そのタイプ(通常または拡張ポイント)、および対応するメッセージフォーマットを確認してください。

本セクションの「メッセージフォーマット」タブでは、プレビューのみを提供しています。EventBridge または Function Compute に送信される完全なメッセージフォーマットについては、「付録:メッセージフォーマット」をご参照ください。

DataStudio のイベント一覧

イベント

イベントタイプ

イベントおよび操作

通常イベント

拡張ポイントイベント

EventBridge タイプ

拡張イベントコード

ノード変更イベント

ノードの作成

  • 新規ノードが本番環境にデプロイされたときに発生します。

image

image

dataworks:NodeChange:NodeChangeCreated

node-change-created

ノードの更新

  • 開発環境でノードが変更されたときに発生します。

  • 変更が本番環境にデプロイされたときに発生します。

image

image

dataworks:NodeChange:NodeChangeUpdated

node-change-updated

ファイル変更イベント

  • ノード

  • リソース

  • 関数

ファイル削除前の事前イベント

開発環境からノードが削除される直前に発生します。

説明

削除されたファイルはごみ箱に移動されます。

image

image

dataworks:FileChange:DeleteFile

delete-file

ファイルコミット前の事前イベント

image

image

dataworks:FileChange:CommitFile

commit-file

ファイルデプロイ前の事前イベント

image

image

dataworks:FileChange:DeployFile

deploy-file

コード実行前の事前イベント

image

image

dataworks:FileChange:RunFile

run-file

テーブル変更イベント

テーブルコミット前の事前イベント

image

image

dataworks:TableChange:CommitTable

commit-table

テーブルデプロイ前の事前イベント

image

image

dataworks:TableChange:DeployTable

deploy-table

メッセージフォーマット

ノード変更イベント

以下の例は、ノード追加・変更・削除イベントのメッセージ本文(イベントメッセージ内の 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
  }
}

以下の表は、data オブジェクトのプロパティを説明しています。

パラメーター

タイプ

説明

nodeName

String

ノードの名前です。

programType

String

ファイルのコードタイプです。有効なコードタイプの一覧については、「ListFileType」API オペレーションを呼び出すか、「サポートされているノードタイプ」をご参照ください。

cronExpress

String

定期実行の Cron 式です。

このパラメーターは、DataWorks コンソールDataStudio タスクの「」に対応しています。

スケジュール周期」および「スケジュール時刻」を設定すると、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

タスクインスタンスのスケジューリングタイプです。有効な値は以下のとおりです。

  • NORMAL (0):通常の自動トリガー型タスクです。タスクは通常のスケジュールで実行されます。

  • MANUAL (1):手動実行型タスクです。タスクは通常のスケジュールで実行されません。

  • PAUSE (2):フリーズ型タスクです。タスクは通常のスケジュールで実行されますが、実行時にステータスが直ちに「失敗」に設定されます。

  • SKIP (3):ドライラン型タスクです。タスクは通常のスケジュールで実行されますが、実行時にステータスが直ちに「成功」に設定されます。

  • SKIP_UNCHOOSE (4):一時ワークフロー内で選択されなかったタスクです。このタイプは一時ワークフロー内でのみ存在します。実行時にステータスが直ちに「成功」に設定されます。

  • SKIP_CYCLE (5):週次または月次のタスクであり、まだスケジュールされた実行時刻に達していないものです。タスクは通常のスケジュールで実行されますが、実行時にステータスが直ちに「成功」に設定されます。

  • CONDITION_UNCHOOSE (6):上流のブランチ(IF)ノードによって選択されなかった下流タスクです。このタスクはドライランタスクとして扱われます。

  • REALTIME_DEPRECATED (7):期限切れとなったリアルタイム生成の定期インスタンスです。ステータスは直ちに「成功」に設定されます。

ownerId

String

ノード所有者の Alibaba Cloud アカウント ID です。このパラメーターが空の場合、呼び出し元の Alibaba Cloud アカウント ID がデフォルトになります。

priority

Integer

タスクの優先度です。有効な値は 1357、および 8 です。値が大きいほど優先度が高くなります。

baselineId

Long

ベースラインの ID です。

repeatability

Boolean

ノードを再実行可能かどうかを示します。

  • true:ノードを再実行できます。

  • false:ノードを再実行できません。

modifyTime

Long

ノードが最後に変更された時刻です。

createTime

Long

ノードが作成された時刻です。

nodeId

Long

ノードの ID です。

projectId

Long

ノードを含むワークスペースの ID です。

tenantId

Long

ノードが属するテナントの ID です。

operator

String

ノードを作成・更新・削除したオペレーターのユーザー ID(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
      }
    }

    以下の表は、data オブジェクトのプロパティを説明しています。

    パラメーター

    タイプ

    説明

    operator

    String

    ファイルをコミットまたはデプロイしたオペレーターのユーザー ID(UID)です。

    projectId

    Long

    ファイルが属するワークスペースの ID です。

    tenantId

    Long

    テナントの ID です。

    nodeId

    Long

    スケジュール済みノードの ID です。

    fileType

    Long

    ファイルのコードタイプです。有効なコードタイプの一覧については、「ListFileType」API オペレーションを呼び出すか、「サポートされているノードタイプ」をご参照ください。

    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
      }
    }

    以下の表は、data オブジェクトのプロパティを説明しています。

    パラメーター

    タイプ

    説明

    operator

    String

    ファイルを削除または実行したオペレーターのユーザー ID(UID)です。

    projectId

    Long

    ファイルが属するワークスペースの ID です。

    tenantId

    Long

    テナントの ID です。

    nodeId

    Long

    スケジュール済みノードの ID です。

    fileType

    Long

    ファイルのコードタイプです。有効なコードタイプの一覧については、「ListFileType」API オペレーションを呼び出すか、「サポートされているノードタイプ」をご参照ください。

    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"
  }
}

以下の表は、data オブジェクトのプロパティを説明しています。

パラメーター

タイプ

説明

operator

String

テーブルをコミットまたはデプロイしたオペレーターのユーザー ID(UID)です。

projectId

Long

ワークスペースの ID です。

tenantId

Long

テナントの ID です。

extensionBizId

String

拡張チェックポイントプロセスの ID です。

tableName

String

テーブルの名前です。

tableType

String

テーブルのタイプです。有効な値は ODPS のみです。

maxComputeProject

String

MaxCompute プロジェクトの名前です。

データ統合イベント

イベント一覧

イベントタイプ

イベントおよびトリガー

通常イベント

拡張ポイントイベント

EventBridge イベントタイプ

拡張イベントコード(eventCode)

ノード変更イベント

ジョブ開始

image

image

dataworks:NodeChange:StartDiJob

start-diJob

複数ジョブの同時開始

image

image

dataworks:NodeChange:BatchStartDiJob

batch-start-diJob

イベントスキーマ

ノード変更イベント:ジョブ開始

ノード変更イベント - ジョブ開始イベント」(イベントメッセージ内の 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

テーブルマッピングの詳細を返すかどうかを指定します。

  • true:詳細を返します。

  • false:詳細を返しません。

ジョブが 500 個を超えるテーブルを対象とする場合、このパラメーターはデフォルトで false になります。

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

起動時のタイムゾーンです。

tableMappings

JSONArray

各ジョブのテーブルマッピングの詳細を含むオブジェクトの配列です。

srcDatasourceName

String

ソースデータソースの名前です。

srcDatabaseName

String

ソースデータベースの名前です。

srcTable

String

ソーステーブルの名前です。

dstDatasourceName

String

宛先データソースの名前です。

dstTable

String

宛先テーブルの名前です。

showTableMapping

Boolean

テーブルマッピングの詳細を返すかどうかを指定します。

  • true:詳細を返します。

  • false:詳細を返しません。

ジョブが 500 個を超えるテーブルを対象とする場合、このパラメーターはデフォルトで false になります。

tenantId

Long

テナントの ID です。

eventCode

String

拡張イベントのコードです。

オペレーションセンターイベント

イベント一覧

重要

スケジューリングリソースグループまたは所有者の変更は、node-change-updated イベントをトリガーします。

イベントタイプ

イベントおよびトリガー

通常イベント

拡張ポイントイベント

EventBridge イベントタイプ

拡張イベントコード

ノード変更イベント

ノードの削除

  • 本番環境からノードをアンデプロイする削除操作を公開します。

  • ごみ箱からノードを削除します。

image

image

dataworks:NodeChange:NodeChangeDeleted

node-change-deleted

ノードのアンデプロイ前の事前イベント

本番環境からスケジュール済みノードをアンデプロイします。

説明

この操作により、ノードは DataStudio から削除され、ごみ箱に移動します。

image

image

dataworks:NodeChange:UndeployNode

undeploy-node

ノードのフリーズ前の事前イベント

重要

このイベントは、node-change-updated イベントもトリガーします。

image

image

dataworks:NodeChange:FreezeNode

freeze-node

ノードのフリーズ解除前の事前イベント

重要

このイベントは、node-change-updated イベントもトリガーします。

image

image

dataworks:NodeChange:UnfreezeNode

unfreeze-node

バックフィルイベント

バックフィル前の事前イベント

image

image

dataworks:BackfillDataOperate:BackfillData

backfill-data

インスタンスステータス変更

スケジュール済みインスタンスのステータスが変更されたとき

image

image

dataworks:InstanceStatusChanges:InstanceStatusChanges

instance-status-changes

インスタンス変更イベント

インスタンスのフリーズ

image

image

dataworks:InstanceChange:FreezeInstance

freeze-instance

インスタンスのフリーズ解除

image

image

dataworks:InstanceChange:UnfreezeInstance

unfreeze-instance

インスタンスの強制終了

image

image

dataworks:InstanceChange:KillInstance

kill-instance

インスタンスの再実行

  • 現在のインスタンスを再実行します。

  • 下流のインスタンスを再実行します。

image

image

dataworks:InstanceChange:RerunInstance

rerun-instance

インスタンスのステータスを「成功」に設定

image

image

dataworks:InstanceChange:SetInstanceSuccess

set-instance-success

インスタンスから指定された上流依存関係を削除

image

image

dataworks:InstanceChange:DeleteTaskInstanceDependencies

delete-task-instance-dependencies

インスタンスのフリーズ前の事前イベント

image

image

dataworks:InstanceChange:PreFreezeInstance

pre-freeze-instance

インスタンスのフリーズ解除前の事前イベント

image

image

dataworks:InstanceChange:PreUnfreezeInstance

pre-unfreeze-instance

インスタンスの再実行前の事前イベント

image

image

dataworks:InstanceChange:PreRerunInstance

pre-rerun-instance

インスタンスのステータスを「成功」に設定する事前イベント

image

image

dataworks:InstanceChange:PreSetInstanceSuccess

pre-set-instance-success

インスタンスの強制終了前の事前イベント

image

image

dataworks:InstanceChange:PreKillInstance

pre-kill-instance

期限切れインスタンスの削除

image

image

dataworks:InstanceChange:ExpiredTaskInstancesDeleted

expired-task-instances-deleted

ワークフローのステータス変更

ワークフローのステータスが変更されたとき

  • インスタンスのバックフィル

  • 手動でトリガーされたワークフローの実行

image

image

dataworks:DagStatusChanges:DagStatusChanges

dag-status-changes

監視およびアラート

モニタリング アラートが発生しました。

image

image

dataworks:MonitorAlert:WorkbenchMonitorAlert

workbench-monitor-alert

メッセージフォーマット

ノード変更イベント(削除、アンデプロイ、フリーズ、フリーズ解除)

  • ノード削除イベントのメッセージ本文のサンプル(イベントメッセージ内の 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"  // オペレーターの UID。
      }
    }

    以下の表は、ペイロード内のフィールドを説明しています。

    パラメーター

    タイプ

    説明

    nodeName

    String

    ノードの名前です。

    programType

    String

    ノードのコードタイプです。サポートされているコードタイプについては、「ListFileType」API を呼び出すか、「サポートされているノードタイプ」をご参照ください。

    cronExpress

    String

    ノードが実行されるタイミングを決定する cron 式です。

    このパラメーターは、DataWorks コンソールDataStudio ノードの「」に対応しています。

    スケジュール周期」および「スケジュール時刻」を設定すると、DataWorks が自動的に cron 式を生成します。例を以下に示します。

    • 毎日 5:30 AM に実行するようにスケジュール:00 30 05 * * ?

    • 毎時 15 分に実行するようにスケジュール:00 15 * * * ?

    • 10 分ごとに実行するようにスケジュール:00 00/10 * * * ?

    • 毎日 8: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):フリーズ済みノードです。スケジューラはインスタンスを生成し、そのステータスを直ちに FAILED に設定します。

    • 3 (SKIP):ドライランノードです。スケジューラはインスタンスを生成し、そのステータスを直ちに SUCCEEDED に設定します。

    • 4 (SKIP_UNCHOOSE):一時ワークフロー内で実行対象として選択されなかったノードです。スケジューラはインスタンスを生成し、そのステータスを直ちに SUCCEEDED に設定します。

    • 5 (SKIP_CYCLE):週次または月次のノードであり、現在のサイクルにおいてスケジュールされた時刻に達していないものです。スケジューラはインスタンスを生成し、そのステータスを直ちに SUCCEEDED に設定します。

    • 6 (CONDITION_UNCHOOSE):上流のブランチノード(IF ノード)で条件が満たされなかったノードです。スケジューラはインスタンスを生成し、そのステータスを直ちに SUCCEEDED に設定します。

    • 7 (REALTIME_DEPRECATED):生成されたインスタンスが期限切れとなったリアルタイムノードです。スケジューラはインスタンスのステータスを SUCCEEDED に設定します。

    ownerId

    String

    ノード所有者の Alibaba Cloud アカウント ID です。空欄の場合、呼び出し元の Alibaba Cloud アカウント ID がデフォルトになります。

    priority

    Integer

    インスタンスの優先度です。有効な値は 1357、および 8 です。値が大きいほど優先度が高くなります。

    baselineId

    Long

    ベースラインの ID です。

    repeatability

    Boolean

    ノードを再実行可能かどうかを示します。有効な値は以下のとおりです。

    • true:ノードを再実行できます。

    • false:ノードを再実行できません。

    modifyTime

    Long

    ノードが最後に変更された時刻です(Unix エポックからのミリ秒単位)。

    createTime

    Long

    ノードが作成された時刻です(Unix エポックからのミリ秒単位)。

    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。

データバックフィル

以下の JSON は、データバックフィルイベントのメッセージサンプルです。以下の表で説明するパラメーターは、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

タスクの開始時刻です。このパラメーターは、時間単位でスケジュールされたタスクにのみ必要です。フォーマット:HH:mm:ss。有効な値:00:00:0023:59:59

bizEndTime

String

タスクの終了時刻です。このパラメーターは、時間単位でスケジュールされたタスクにのみ必要です。フォーマット:HH:mm:ss。有効な値:00:00:0023:59:59

isParallel

Boolean

異なるデータタイムスタンプを持つデータバックフィルインスタンスを並列実行できるかどうかを指定します。

  • true:インスタンスは並列で実行されます。

  • false:インスタンスは順次実行されます。

parallelGroup

Integer

並列実行のためのグループ数です。値が 1 の場合、インスタンスはグループに分割されません。

startFutureInstanceImmediately

Boolean

スケジュール時刻をバイパスして、未来日付のインスタンスを直ちに実行するかどうかを指定します。

  • true:スケジュール時刻をバイパスし、未来日付のインスタンスを直ちに実行します。

  • false:スケジュール時刻まで待機してから、未来日付のインスタンスを実行します。

order

String

インスタンスのデータタイムスタンプに基づく実行順序を指定します。

  • asc:データタイムスタンプの昇順(時系列順)でインスタンスを実行します。

  • desc:データタイムスタンプの降順(逆時系列順)でインスタンスを実行します。

multipleTimePeriods

String

データタイムスタンプの複数の非連続な期間を指定する JSON 文字列です。例:[{\"bizBeginTime\":\"2022-04-17\",\"bizEndTime\":\"2022-04-17\"}]

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

DagId を使用して DAG の詳細を取得できます。

dagType

Integer

DAG のタイプです。有効な値は以下のとおりです。

  • 0:自動トリガーノード

  • 1:手動トリガーノード

  • 2:スモークテスト

  • 3:データバックフィル

  • 4:一時ワークフロー

  • 5:手動トリガーワークフロー

taskType

Integer

ノードタイプです。有効な値は以下のとおりです。

  • 0:NORMAL。定期的に実行される自動トリガーノードです。

  • 1:MANUAL。定期的に実行されない手動トリガーノードです。

  • 2:PAUSE。フリーズされたノードです。定期的にスケジュールされますが、実行時にステータスが「失敗」に設定されます。

  • 3:SKIP。ドライランノードです。定期的にスケジュールされますが、実行時にステータスが「成功」に設定されます。

  • 4:SKIP_UNCHOOSE。一時ワークフローで選択されていないノードです。このタイプは一時ワークフローにのみ存在します。実行時にステータスが「成功」に設定されます。

  • 5:SKIP_CYCLE。まだ実行時刻に達していない週次または月次のノードです。ノードは定期的にスケジュールされますが、実行時にステータスが「成功」に設定されます。

  • 6:CONDITION_UNCHOOSE。上流のブランチノードによって選択されなかったノードです。ステータスは「成功」に設定されます。

  • 7:REALTIME_DEPRECATED。定期ノードの期限切れのリアルタイムインスタンスです。ステータスは「成功」に設定されます。

modifyTime

Long

ノードインスタンスが最後に変更された時刻を示すタイムスタンプです。

createTime

Long

ノードインスタンスが作成された時刻を示すタイムスタンプです。

appId

Long

ワークスペースの ID です。この ID を見つけるには、ListProjects オペレーションを呼び出します。

tenantId

Long

ノードインスタンスを含むワークスペースを所有するテナントの ID です。

opCode

Integer

ノードインスタンスのオペレーションコードです。このフィールドは無視できます。

flowId

Long

ワークフローの ID です。

  • 自動トリガーノードのインスタンスの場合、デフォルトのワークフロー ID は 1 です。

  • 手動トリガーワークフローまたは内部ワークフローのインスタンスの場合、このフィールドは実際のワークフロー ID を示します。

nodeId

Long

インスタンスの親ノードの ID です。

beginWaitResTime

Long

ノードインスタンスがリソース待機を開始した時刻を示すタイムスタンプです。

taskId

Long

ノードインスタンスの ID です。

status

Integer

ノードインスタンスのステータスです。有効な値は以下のとおりです。

  • 1:未実行

  • 2dueTime または cycleTime で指定されたスケジュール時刻を待機中

  • 3:リソース待機中

  • 4:実行中

  • 7:データ検証のために送信済み

  • 8:ブランチ条件の確認中

  • 5:失敗

  • 6:成功

eventCode

String

拡張ポイントイベントのコードです。

インスタンス変更イベント

以下の JSON 例は、インスタンス変更イベントのペイロードを示しています。このペイロードは 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

ランタイム環境です。有効な値は以下のとおりです。

  • PROD:本番環境。

  • DEV:開発環境。

taskIds

List<Long>

インスタンス 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<Long>

影響を受けるインスタンスの 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
    }
}

以下の表は、data オブジェクト内のフィールドを説明しています。

パラメーター

タイプ

説明

deletedTaskInstanceIds

List

削除されたインスタンス ID のリストです。

owner

String

インスタンス所有者のユーザー ID です。

operationTime

Long

操作時刻です(Unix エポックタイムスタンプ、ミリ秒単位)。

blockBusiness

Boolean

拡張機能が存在する場合にフローを停止するかどうかを示します。

  • true:フローを停止します。

  • false:フローの続行を許可します。

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

ワークフローのビジネス日付です。フォーマットは yyyy-mm-dd hh24:mi:ss です。

createTime

String

ワークフローの作成時刻です。フォーマットは yyyy-mm-dd hh24:mi:ss です。

dagId

Long

ワークフローの一意の ID です。この ID を使用してワークフローの詳細を取得します。

dagName

String

ワークフローの名前です。

dagType

Integer

ワークフローのタイプです。有効な値は以下のとおりです。

  • 0:定期タスク

  • 1:手動タスク

  • 2:スモークテスト

  • 3:データバックフィル

  • 4:一時ワークフロー

  • 5:手動トリガーワークフロー

flowId

Integer

ワークフローに関連付けられたビジネスプロセスの ID です。

flowName

String

ワークフローに関連付けられたビジネスプロセスの名前です。

operator

String

ワークフローを作成したユーザーの UID です。

projectEnv

String

ワークフローが実行される環境です。有効な値は以下のとおりです。

  • DEV:開発環境

  • PROD:本番環境

tenantId

Long

ワークスペースのテナント ID です。

projectId

Long

ワークスペースの ID です。

status

Integer

ワークフローのステータスです。有効な値は以下のとおりです。

  • 1:未実行

  • 4:実行中

  • 5:失敗

  • 6:成功

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

    ビジネス日付(Unix タイムスタンプ)です。

    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

    アラートをトリガーしたノードの ID のカンマ区切りリストです。

    remindId

    Long

    ルールの ID です。

    remindType

    String

    ルールのトリガー条件です。有効な値は以下のとおりです。

    • FINISHED:実行が完了しました。

    • UNFINISHED:実行が完了していません。

    • ERROR:実行が失敗しました。

    • CYCLE_UNFINISHED:スケジューリングサイクル内に実行が完了していません。

    • TIMEOUT:実行がタイムアウトしました。

    projectId

    Long

    トリガーとなったノードが配置されているワークスペースの ID です。

    remindUnit

    String

    ルールをトリガーしたオブジェクトのタイプです。有効な値は以下のとおりです。

    • NODE:ノード。

    • GATEWAY_RES:スケジューリング用の排他的リソースグループ。

    • DI_RES:データ統合用のリソースグループ。

    tenantId

    Long

    テナントの ID です。

    taskIds

    String

    アラートをトリガーしたインスタンスの ID のカンマ区切りリストです。

    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

    String

    ルールのトリガー条件です。有効な値は以下のとおりです。

    • FINISHED:実行が完了しました。

    • UNFINISHED:実行が完了していません。

    • ERROR:実行が失敗しました。

    • CYCLE_UNFINISHED:スケジューリングサイクル内に実行が完了していません。

    • TIMEOUT:実行がタイムアウトしました。

    • RES_GROUP_THRESHOLD:リソースグループのリソース使用率が指定されたしきい値に達しました。

    • 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 のイベントタイプ

拡張機能のイベントコード(eventCode)

承認センター

権限リクエストの作成

image

image

dataworks:ApprovalChange:ApprovalChangeCreated

approval-change-created

権限リクエストの完了

image

image

dataworks:ApprovalChange:ApprovalChangeFinished

approval-change-finished

セキュリティセンター(テーブル権限リクエスト)

テーブル権限リクエスト(作成前)

image

image

dataworks:ApprovalChange:ApprovalChangeBeforeCreate

approval-change-before-create

メッセージフォーマット

承認センター

  • 権限リクエスト作成の事前イベントのメッセージ本文フォーマットの例(イベントメッセージ内の 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",
        "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",
        "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

    承認者のユーザー ID です。

    assigneeName

    String

    承認者の名前です。

    comments

    String

    承認リクエストに関するコメントです。

    createTime

    Long

    承認リクエストが作成されたタイムスタンプ(ミリ秒単位)です。

    processId

    String

    ワークフローの ID です。

    status

    String

    イベント遷移のステータス(例:Submit)です。

    taskId

    String

    承認タスクの ID です。

    tenantId

    String

    テナントの ID です。

    updateTime

    Long

    イベントが最後に更新されたタイムスタンプ(ミリ秒単位)です。

    eventType

    String

    イベントのタイプです。

    process

    Object

    ワークフローオブジェクトです。

    applicant

    String

    申請者のユーザー ID です。

    applicantName

    String

    申請者の名前です。

    assignmentCategory

    String

    承認リクエストのコンテンツカテゴリ(例:MaxCompute)です。

    createTime

    Long

    承認リクエストが作成されたタイムスタンプ(ミリ秒単位)です。

    processDefinitionId

    String

    ワークフロー定義の ID です。

    processId

    String

    ワークフローの ID です。

    status

    String

    ワークフローの現在のステータス(例:Pending)です。

    title

    String

    ワークフローのタイトルです。

    updateTime

    Long

    ワークフローが最後に更新されたタイムスタンプ(ミリ秒単位)です。

    approvalContent

    Object

    承認リクエストの詳細を含むオブジェクトです。

    applyPeriod

    String

    リクエストされた権限の有効期限(ミリ秒単位のタイムスタンプ)です。

    applyReason

    String

    承認リクエストの理由です。

    contentType

    String

    承認コンテンツのタイプです。

    odpsProjectName

    String

    MaxCompute プロジェクトの名前です。

    resourceSummary

    String

    リソースの概要です。

    tenantId

    Long

    テナントの ID です。

    workspaceId

    Long

    ワークスペースの ID です。

    projectEnv

    String

    承認対象のプロジェクトの環境です。

    granteeAccounts

    Array

    被付与者オブジェクトの配列です。

    .granteeId

    String

    被付与者の ID です。

    granteeType

    Integer

    被付与者のタイプです。

    granteeTypeSub

    Integer

    被付与者のサブタイプです。

    granteeName

    String

    被付与者の名前です。Resource Access Management (RAM) ユーザーの場合、名前は RAM$dataworks_3h1_1:yupeng.sunyp のような形式になります。

    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",
        "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

    被割り当て者の Base ID です。

    assigneeName

    String

    被割り当て者の名前です。

    comments

    String

    承認リクエストのコメントです。

    createTime

    Long

    承認リクエストが作成されたタイムスタンプ(ミリ秒単位)です。

    processId

    String

    承認リクエスト ID です。

    status

    String

    承認リクエストのステータスです。

    taskId

    String

    承認タスク ID です。

    tenantId

    String

    テナント ID です。

    updateTime

    String

    承認リクエストが最後に更新されたタイムスタンプ(ミリ秒単位)です。

    eventType

    String

    イベントタイプです。

    process

    Object

    承認プロセスの詳細です。

    applicant

    String

    申請者の Base ID です。

    applicantName

    String

    申請者の名前です。

    assignmentCategory

    String

    承認のカテゴリ(MaxCompute など)です。

    createTime

    Long

    ワークフローが作成されたタイムスタンプ(ミリ秒単位)です。

    processDefinitionId

    String

    ワークフロー定義 ID です。

    processId

    String

    ワークフローインスタンスの ID です。

    status

    String

    ワークフローのステータスです。

    title

    String

    ワークフローのタイトルです。

    updateTime

    Long

    ワークフローが最後に更新されたタイムスタンプ(ミリ秒単位)です。

    approvalContent

    Object

    リクエストの詳細を含むオブジェクトです。

    applyPeriod

    String

    リクエストされた権限の有効期間です。

    applyReason

    String

    リクエストの理由です。

    contentType

    String

    データのコンテンツタイプです。

    odpsProjectName

    String

    MaxCompute プロジェクトの名前です。

    resourceSummary

    String

    リソースの概要です。

    tenantId

    Long

    テナント ID です。

    workspaceId

    Long

    ワークスペース ID です。

    projectEnv

    String

    プロジェクトの環境です。

    granteeAccounts

    Array

    被付与者を表すオブジェクトの配列です。

    granteeId

    String

    被付与者の ID です。

    granteeType

    String

    被付与者のタイプです。

    granteeTypeSub

    String

    被付与者のサブタイプで、アカウントの種類を指定します。有効な値は以下のとおりです。

    • ACCOUNT_PRD(101):本番スケジューリングに使用される Alibaba Cloud アカウント。

    • ACCOUNT_APP(102):アプリケーション用の Alibaba Cloud アカウント。

    • ACCOUNT_USER(103):個人の Alibaba Cloud アカウント。

    • ACCOUNT_DEPT(104):部門の Alibaba Cloud アカウント。

    • ACCOUNT_MOCK(106):モックアカウント。

    • ACCOUNT_OTHER_USER(105):他のユーザーの Alibaba Cloud アカウント。

    granteeName

    String

    被付与者の名前です。

    arrayData

    Array

    権限付与対象のリソースを表すオブジェクトの配列です。詳細については、「開発リファレンス:イベント一覧とメッセージフォーマット」をご参照ください。

    eventType

    String

    イベントタイプです。

セキュリティセンター(テーブル権限事前イベント

以下は、テーブル権限リクエスト事前イベントのメッセージ本文フォーマットの例です。これは、イベントメッセージ内の 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
  }
}

以下の表は、data オブジェクト内のフィールドを説明しています。

パラメーター

タイプ

説明

operator

String

権限リクエストを開始したプリンシパルのユーザー UID です。

projectId

Long

操作が開始されたワークスペースの ID です。

tenantId

Long

操作が開始されたテナントの ID です。

order

Object

権限リクエストの詳細を含むオブジェクトです。

applyReason

String

権限リクエストの理由です。

deadlineDate

String

有効期間の長さです。

deadlineType

String

有効期間の時間単位です。例:DayMonth

granteeObjectList

Array

権限被付与者のリストです。

granteeId

String

被付与者の一意の識別子で、RAM ユーザー ID です。

projectMeta

Object

ワークスペースに関するメタデータを含むオブジェクトです。

envCode

Integer

ワークスペース環境の識別子です。有効な値は以下のとおりです。

labelSecurity

Boolean

ラベルベースのアクセス制御が有効かどうかを示します。

  • true:有効。

  • false:無効。

objectMetaList

Array

ターゲットリソースとそれらに付与される操作を定義するオブジェクトのリストです。

action

Array

リソースに付与する操作のリストです。例:SelectDescribe

name

String

権限がリクエストされているテーブルの名前です。

projectGuid

String

テーブルが属するワークスペースのグローバル一意識別子(GUID)です。

projectName

String

テーブルが属するワークスペースの名前です。

eventType

String

イベントのタイプです。

MaxCompute 権限付与データ

DataWorks で承認またはテーブル権限リクエストがセキュリティセンターでイベントをトリガーすると、EventBridge に送信されるメッセージには arrayData フィールドが含まれます。assignmentCategoryMaxCompute の場合、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

テーブル所有者の ID です。

ownerAccountName

String

テーブル所有者のアカウント名です。

objectType

String

オブジェクトのタイプです。

odpsTable

String

テーブルの名前です。

envType

Integer

テーブルの環境です。

projectGuid

String

プロジェクトのグローバル一意識別子(GUID)です。

objectGuid

String

オブジェクトのグローバル一意識別子(GUID)です。

objectName

String

オブジェクトの名前です。

odpsProject

String

MaxCompute プロジェクトの名前です。

projectName

String

DataWorks のプロジェクト名です。

projectId

Long

プロジェクトの ID です。

workspaceId

String

ワークスペースの ID です。

actions

Array

リクエストされた操作のリストです。

DataService 権限付与イベントペイロード

DataWorks で、セキュリティセンターで承認がトリガーされたり、テーブル権限がリクエストされたりすると、EventBridge に送信されるメッセージには arrayData フィールドが含まれます。assignmentCategoryDataService の場合、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

権限付与に使用されるリソースの複合識別子です。

ownerName

String

リソース所有者の名前です。

resourceVersion

Long

リソースのバージョンです。

name

String

リソースの名前です。

dsDeployId

String

DataService からのデプロイメント ID です。

workspaceName

String

ワークスペースの名前です。

id

String

DataService アセットの一意の ID です。

type

Integer

リソースのタイプです。有効な値は以下のとおりです。

  • 1:API

  • 2:関数

  • 3:サービスオーケストレーション

ownerId

String

リソース所有者の BaseID です。

url

String

DataService アセットの URL です。

workspaceId

String

ワークスペースの ID です。

データ品質イベント

イベント一覧

イベントタイプ

イベント

通常イベント

拡張ポイントイベント

EventBridge タイプ

拡張イベントコード

データ品質チェック

検証結果に関するフィードバック

  • ユーザーが検証結果に関するフィードバックを提供したときにトリガーされます。

image

image

dataworks:DqcCheck:DqcCheckFeedbackEvent

dqc-check-feedback-event

データ品質チェック完了

  • データ品質ルールのチェックが完了したときにトリガーされます。このイベントには、ルールが合格したかどうかやサンプルデータを含む検証結果が含まれます。

image

image

dataworks:DqcCheck:DqcCheckFinishedEvent

dqc-check-finished-event

データ品質ルール管理イベント

ルールの一括作成

image

image

dataworks:DqcCheck:BatchCreateDataQualityRules

batch-create-data-quality-rules

ルールの一括更新

image

image

dataworks:DqcCheck:BatchUpdateDataQualityRules

batch-update-data-quality-rules

ルールの一括削除

image

image

dataworks:DqcCheck:BatchDeleteDataQualityRules

batch-delete-data-quality-rules

ルールの更新

image

image

dataworks:DqcCheck:UpdateDataQualityRule

update-data-quality-rule

監視タスク管理イベント

監視タスクの作成

image

image

dataworks:DqcCheck:CreateDataQualityEvaluationTask

create-data-quality-evaluation-task

監視タスクの更新

image

image

dataworks:DqcCheck:UpdateDataQualityEvaluationTask

update-data-quality-evaluation-task

監視タスクのクローン

image

image

dataworks:DqcCheck:CloneDataQualityEvaluationTask

clone-data-quality-evaluation-task

監視タスクの一括削除

image

image

dataworks:DqcCheck:BatchDeleteDataQualityEvaluationTasks

batch-delete-data-quality-evaluation-tasks

アラートサブスクリプション管理イベント

アラートサブスクリプションの作成

image

image

dataworks:DqcCheck:CreateDataQualityEvaluationTaskNotification

create-data-quality-evaluation-task-notification

アラートサブスクリプションの更新

image

image

dataworks:DqcCheck:UpdateDataQualityEvaluationTaskNotification

update-data-quality-evaluation-task-notification

アラートサブスクリプションの削除

image

image

dataworks:DqcCheck:DeleteDataQualityEvaluationTaskNotification

delete-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

    データ品質ノードの ID です。

    beginTime

    String

    フィードバックが提供されたタイムスタンプ(ミリ秒単位)です。

    envType

    String

    ルールに関連付けられたテーブルが属するデータソースのタイプです。有効な値には、ODPS、E-MapReduce (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": "表行数,1天差值",
            "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": "前一天差值",
        "isPrediction": false,
        "feedbackStatus": 0,
        "whetherToFilterDirtyData": false
      }
    }

    以下の表は、フィールドを説明しています。

    パラメーター

    タイプ

    説明

    id

    Long

    ルールチェックがトリガーされるたびに生成される、チェック実行の一意の 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

    サンプルデータを収集するために使用されるメソッドです。例:avgcountsumminmaxcount_distinctuser_definedtable_counttable_sizetable_dt_load_counttable_dt_refuseload_countnull_valuenull_value/table_count(table_count-count_distinct)/table_count、および table_count-count_distinct

    beginTime

    Long

    チェック実行の開始時刻です。

    endTime

    Long

    チェック実行の完了時刻です。

    timeConsuming

    String

    チェックノードの実行時間です。

    externalType

    String

    スケジューリングシステムのタイプです。CWF2 が唯一サポートされている値です。このフィールドが空の場合、チェックは手動テスト実行によってトリガーされたことを示します。

    externalId

    String

    • externalTypeCWF2 の場合、このフィールドはスケジュール済みノードの ID です。

    • externalType が空の場合、このフィールドは triggerByManual となり、手動トリガーを示します。

    discrete

    Boolean

    チェックが離散的かどうかを示します。有効な値は以下のとおりです。

    • true:チェックは離散的です。

    • false:チェックは離散的ではありません。

    fixedCheck

    Boolean

    チェックが固定値を使用するかどうかを示します。有効な値は以下のとおりです。

    • true:チェックは固定値を使用します。

    • false:チェックは固定値を使用しません。

    referenceValue

    過去のサンプル値を含みます。

    bizDate

    Long

    データのビジネス日付です。オフラインデータの場合、通常はチェック実行の前日です。

    discreteProperty

    String

    GROUP BY 句でグループ化された後のサンプルフィールドの値です。たとえば、性別フィールドでグループ化した場合、discreteProperty の値は MaleFemalenull になります。

    value

    Decimal

    サンプル値です。

    singleCheckResult

    Integer

    この特定のサンプルの結果ステータスです。

    sampleValue

    現在のチェックのサンプル値です。

    bizDate

    Long

    データのビジネス日付です。オフラインデータの場合、通常はチェック実行の前日です。

    value

    Decimal

    サンプル値です。

    trend

    String

    チェック結果の傾向です。

    expectValue

    Double

    期待値です。

    op

    String

    比較演算子です。

    projectName

    String

    チェック対象のコンピュートエンジンまたはデータソースの名前です。

    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 is greater than 0",
              "enabled": true,
              "severity": "High",
              "description": "Test for the data quality rule creation operation",
              "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

    操作が実行された時刻で、Unix タイムスタンプ(ミリ秒単位)で表されます。

    dataQualityTaskId

    Long

    ルールに関連付けられたデータ品質モニタリングタスクの ID です。このパラメーターは任意です。

    target

    DataQualityTarget

    データ品質ルールによって監視されるオブジェクトです。

    databaseType

    String

    監視対象テーブルを含むデータベースのタイプです。有効な値は以下のとおりです。

    • MaxCompute

    • EMR

    • CDH

    • Hologres

    • AnalyticDB for PostgreSQL

    tableGuid

    String

    データマップ内のテーブルの一意の識別子です。

    rules

    List<DataQualityRule>

    作成されるデータ品質ルールオブジェクトのリストです。

    name

    String

    データ品質ルールの名前です。

    enabled

    Boolean

    ルールを有効にするかどうかを指定します。デフォルト値:true

    severity

    String

    ルールの重要度で、これは UI の「強度」設定に対応しています。有効な値は以下のとおりです。

    • 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 is greater than 0",
          "enabled": true,
          "severity": "High",
          "description": "Test for the Data Quality Rule update operation",
          "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

    ユーザー ID です。

    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

    • Fluctuation

    • FluctuationDiscrete

    • 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

    Long

    DataWorks ワークスペースの ID です。

    operator

    String

    操作を実行しているユーザーの UID です。

    operationTime

    Long

    操作が発生した時刻で、Unix タイムスタンプ(ミリ秒単位)です。

    ids

    List<Long>

    削除するデータ品質ルールの ID のリストです。

    tenantId

    String

    テナントの一意の識別子です。

    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 is greater than 0",
          "enabled": true,
          "severity": "High",
          "description": "A test check for the Data Quality Rule creation operation.",
          "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

    操作が発生した時刻で、Unix ミリ秒単位です。

    id

    Long

    ルールの ID です。

    name

    String

    ルールの名前です。

    enabled

    Boolean

    Data Quality ルールが有効かどうかを示します。

    true:ルールは有効です。

    false:ルールは無効です。

    severity

    String

    ルールの重要度です。このフィールドは、UI 上のルール強度設定に対応しています。有効な値は以下のとおりです。

    • 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 monitor",
          "description": "After a scheduled instance that writes data to the table runs successfully, this monitor is triggered 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 is greater than 0",
              "enabled": true,
              "severity": "High",
              "description": "Test for the Data Quality Rule create operation",
              "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 is 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

    • E-MapReduce (EMR)

    • CDH

    • Hologres

    • AnalyticDB for PostgreSQL

    tableGuid

    String

    データマップ内のテーブルの一意の ID です。

    trigger

    DataQualityEvaluationTaskTrigger

    データ品質モニタリングタスクのトリガー構成です。

    type

    String

    タスクの実行をトリガーするイベントタイプを指定します。有効な値は以下のとおりです。

    • ByScheduledTaskInstance:スケジュール済みインスタンスが正常に実行されたときにタスクをトリガーします。これはパブリッククラウド環境でのみサポートされています。

    • ByManual:手動でタスクをトリガーします。

    taskIds

    Array<Long>

    typeByScheduledTaskInstance に設定する場合、このパラメーターは必須です。スケジュール済みノードの ID を指定し、成功したインスタンス実行後にタスクをトリガーします。

    dataSourceId

    Long

    データ品質モニタリングタスクで使用されるデータソースの ID です。

    runtimeConf

    String

    データソースのランタイム構成です。このパラメーターは、現在 E-MapReduce(EMR)の YARN キューを指定したり、E-MapReduce(EMR)テーブルからデータを収集するために SQL エンジンを SPARK-SQL に設定したりすることをサポートしています。

    rules

    List<DataQualityRule>

    データ品質ルールのリストです。パラメーターの詳細については、「モニタリングルールの事前イベント(複数のモニタリングルールの一括作成・一括更新・一括削除およびモニタリングルールの更新)」をご参照ください。

    hooks

    Array<DataQualityEvaluationTaskHook>

    データ品質モニタリングタスクインスタンスのライフサイクルにおけるコールバック設定(フック)です。現在、スケジュール済みインスタンスをブロックするフックのみがサポートされています。

    type

    String

    フックの後処理アクションのタイプです。有効な値は以下のとおりです。

    BlockTaskInstance:DataWorks タスクインスタンスの実行をブロックします。

    condition

    String

    フックのトリガー条件です。

    notifications

    Array<Notification>

    アラート通知設定です。

    projectId

    Long

    DataWorks ワークスペース 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

    Long

    テナント ID です。

    operator

    String

    オペレーター UID です。

    operationTime

    Long

    操作時間。

    targets

    List<DataQualityTarget>

    クローン操作の対象となるオブジェクトです。

    databaseType

    String

    テーブルデータセットの場合、これはテーブルのデータベースタイプを指定します。有効な値は以下のとおりです。

    • MaxCompute

    • E-MapReduce (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<Long>

    削除するデータ品質モニタリングタスクの ID のリストです。

    tenantId

    Long

    テナント 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

    操作時刻で、Unix タイムスタンプ(ミリ秒単位)として指定されます。

    dataQualityEvaluationTaskId

    Long

    データ品質モニタリングタスク ID です。

    channel

    String

    通知チャネルのタイプです。有効な値は以下のとおりです。

    • Mail:メール

    • Sms:SMS

    • Phone:電話

    • Feishu:Lark

    • Weixin:WeChat

    • Dingding:DingTalk

    • Webhook:カスタム Webhook

    receiverValue

    String

    特定の通知先(メールアドレスや Webhook URL など)です。

    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

    操作時刻で、Unix タイムスタンプ(ミリ秒単位)として指定されます。

    dataQualityEvaluationTaskId

    Long

    データ品質モニタリングタスク ID です。

    currentChannel

    String

    更新前の元のチャネルタイプです。有効な値については、channel フィールドの説明をご参照ください。

    • メール

    • SMS

    • 電話

    • Lark

    • WeChat

    • DingTalk

    • カスタム Webhook

    currentReceiverValue

    String

    更新前の元の通知先です。

    updatedChannel

    String

    更新後の新しいチャネルタイプです。channel フィールドの説明をご参照ください。

    • メール

    • SMS

    • 電話

    • Lark

    • WeChat

    • DingTalk

    • カスタム Webhook

    updatedReceiverValue

    String

    更新後の新しい通知先です。

    eventCode

    String

    一意のイベントコードです。

テナントレベルのイベント

テナントレベルのモジュールは、テナントレベルのイベントを生成します。たとえば、コンソールでワークスペースを削除するとイベントが生成されます。「イベント一覧」では、各モジュールでサポートされているイベント、それが標準イベントか拡張ポイントイベントか、およびそのメッセージフォーマットについて示しています。

メッセージフォーマット」タブには部分的な内容のみが表示されます。EventBridge または Function Compute に送信される完全なイベントメッセージについては、「付録:メッセージフォーマット」をご参照ください。

コンソールイベント

イベント一覧

イベントタイプ

イベントおよび操作

通常イベント

拡張イベント

EventBridge イベントタイプ

拡張イベントコード

ワークスペース削除

ワークスペース削除前の事前イベント

image

image

dataworks:ProjectChange:DeleteProject

delete-project

ワークスペース削除後の事後イベント

image

image

dataworks:ProjectChange:ProjectDeleted

project-deleted

メッセージフォーマット

ワークスペース削除イベント

  • 以下のサンプルは、テナントがワークスペースを削除する直前にトリガーされる事前イベントのメッセージ本文フォーマット(イベントメッセージ内の 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 タイプ

拡張イベントコード

アップロードおよびダウンロード

事前ダウンロード:ファイル生成

image

image

dataworks:ResourcesDownload:DownloadResources

download-resources

事前ダウンロード:ファイルダウンロード

image

image

dataworks:ResourcesDownload:DownloadResourcesExecute

download-resources-execute

事前アップロード

image

image

dataworks:ResourcesUpload:UploadDataToTable

upload-data-to-table

メッセージフォーマット

アップロードおよびダウンロード

  • 以下のサンプルは、「データダウンロード事前イベント - ファイル生成」イベントのメッセージ本文です。これは、イベントメッセージ内の data フィールドの内容です。

    { 
        "data": {
            "eventCode": "download-resources",
            "moduleType": "sqlx_query",
            "operatorBaseId": "123936573******",
            "operatorUid": "14931896037*******",
            "fileName": "sample-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:DataStudio 内の 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": "sample-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": "default",
      "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:DataStudio 内の 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": "default",
      "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:Object Storage Service(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

オープンイベント (OpenEvent) でイベント配信チャネルを構成すると、ワークスペースレベルまたはテナントレベルのイベントがトリガーされた際に、DataWorks から EventBridge へイベントが送信されます。EventBridge コンソールで、これらのイベントを type に基づいてフィルターできます。以下は、DataWorks が EventBridge へ送信するメッセージの JSON フォーマットです。

{ 
 "datacontenttype": "application/json;charset=utf-8", // data フィールドのフォーマット。application/json のみサポートされます。
  "data": {
 // data オブジェクトの内容はイベントタイプによって異なります。tenantId および eventCode フィールドは常に含まれます。特定のイベントについては、このトピックのイベント一覧をご参照ください。
 "tenantId": 28378****10656, // テナント ID。DataWorks では、各 Alibaba Cloud アカウントは一意のテナント ID を持つテナントに対応します。テナント ID は、DataStudio ページのユーザープロファイル内の「ユーザー情報」で確認できます。
 "eventCode": "xxxx"
  },
  "id": "539fd8f4-4ea1-4625-aa8b-6c906674****", // イベントの一意の識別子。
  "source": "acs.dataworks", // イベントを生成したサービス。「`acs.dataworks`」は、イベントが DataWorks から送信されたことを示します。
  "specversion": "1.0",
  "subject": "",
  "time": "2020-11-19T21:04:41+08:00", // イベントが生成された時刻。
  "type": "dataworks:InstanceStatusChanges:InstanceStatusChanges", // イベントタイプ。EventBridge でのイベントフィルタリングに使用されます。
  "aliyunaccountid": "123456789098****", // Alibaba Cloud アカウント ID。
  "aliyunpublishtime": "2020-11-19T21:04:42.179PRC", // EventBridge がイベントを受信した時刻。
  "aliyuneventbusname": "default", // DataWorks からイベントを受信する EventBridge イベントバスの名前。
  "aliyunregionid": "cn-hangzhou", // イベントが受信されたリージョン。
  "aliyunpublishaddr": "172.25.XX.XX"
}

イベントメッセージには、ペイロードおよびイベント ID、イベントソース、生成時刻などのメタデータが含まれます。以下の表は、主要なフィールドを説明しています。

パラメーター

タイプ

説明

data

object

イベントメッセージのペイロードです。ペイロードのフォーマットおよびフィールドはイベントタイプによって異なります。詳細については、以下をご参照ください。

DataStudio のイベントのメッセージフォーマットについては、「DataStudio のイベント」をご参照ください。

データ統合のイベントのメッセージフォーマットについては、「データ統合のイベント」をご参照ください。

オペレーションセンターのイベントのメッセージフォーマットについては、「オペレーションセンターのイベント」をご参照ください。

セキュリティセンターのイベントのメッセージフォーマットについては、「セキュリティセンターのイベント」をご参照ください。

データ品質のイベントのメッセージフォーマットについては、「データ品質のイベント」をご参照ください。

id

String

イベントを追跡するために使用される一意の識別子です。

type

String

source に対してスコープ化されたイベントタイプです。例:

  • dataworks:FileChange:CommitFile:ファイルがコミットされたことを示します。

  • dataworks:FileChange:DeployFile:ファイルがデプロイされたことを示します。

このフィールドを使用して、EventBridge コンソールで DataWorks のイベントをフィルターできます。このフィールドの値はイベントによって異なります。詳細については、このトピックのイベント一覧をご参照ください。

Function Compute

DataWorks で拡張機能 (Extensions)を Function Compute と連携させるように構成すると、対応する拡張ポイントイベントがトリガーされた際に、DataWorks から Function Compute へ JSON メッセージが送信されます。Function Compute は、以下の JSON フォーマットでメッセージを受信します。

{
	"blockBusiness": true,
	"eventCategoryType": "resources-download", // イベントカテゴリ。
	"eventType": "upload-data-to-table", // イベントタイプ。
	"extensionBizId": "job_6603***070",
	"messageBody": {
             // messageBody オブジェクトの内容はイベントタイプによって異なります。tenantId および eventCode フィールドは常に含まれます。特定のイベントについては、このトピックのイベント一覧をご参照ください。
             "tenantId": 28378****10656, // テナント ID。DataWorks では、各 Alibaba Cloud アカウントは一意のテナント ID を持つテナントに対応します。テナント ID は、DataStudio ページのユーザープロファイル内の「ユーザー情報」で確認できます。
             "eventCode": "xxxx"
	},
	"messageId": "52d44ee7-b51f-4d4d-afeb-*******" // イベントの一意の識別子。
}

以下の表は、主要なフィールドを説明しています。

パラメーター

タイプ

説明

messageId

String

イベントを追跡するために使用される一意の識別子です。

messageBody

Object

メッセージペイロードで、DataWorks からのイベント固有のデータを含みます。その内容はイベントタイプによって異なり、拡張機能の開発時に使用できます。

tenantId

String

テナント ID です。DataWorks では、各 Alibaba Cloud アカウントは一意の ID を持つテナントに対応します。テナント ID は、DataStudio ページのユーザープロファイル内の「ユーザー情報」で確認できます。

eventCode

String

イベントコードです。このフィールドは、特定のカテゴリのイベントメッセージを識別します。各イベントタイプのイベントコードを確認するには、「このトピック」の表の「拡張機能のイベントコード」列をご参照ください。