このドキュメントでは、タスク(DAG)の詳細情報を取得する方法について説明します。
呼び出しの説明
インターフェース制約
obshell ServerはこのAPIに対してセキュリティ検証を実施します。詳細については、APIハイブリッド暗号化を参照してください。
リクエストパス
GET /api/v1/task/dag/{id}
ここでの id はDAGの汎用IDとして設定する必要があります。
リクエストパラメータ
パラメータ |
型 |
必須 |
サンプル値 |
説明 |
|---|---|---|---|---|
| show_details | bool | いいえ | true | DAGの詳細情報を表示するかどうかを制御します。デフォルトはtrueで、表示することを意味します。 |
戻り値
パラメータ |
型 |
説明 |
|---|---|---|
| successful | bool | リクエストが成功したかどうかを示します。 |
| timestamp | time.Time | サーバーがリクエストを完了したタイムスタンプです。 |
| duration | int | サーバーがリクエストを処理した時間(ミリ秒)です。 |
| status | int | HTTPステータスコードに準拠したエンコードです。 |
| traceId | string | リクエストのTrace IDです。 |
| data | DagDetailDTO | 詳細は以下の DagDetailDTO情報のデータ構造 を参照してください。 |
| error | ApiError | リクエストで発生したErrorです。以下の情報が含まれます:
|
DagDetailDTO情報のデータ構造は以下のとおりです:
パラメータ |
型 |
説明 |
|---|---|---|
| id | string | DAG共通ID。 |
| dag_id | int | DAG IDは、OceanBaseデータベースに記録される主キーです。 |
| name | string | DAG名。 |
| stage | int | DAGの現在の実行段階。 |
| max_stage | int | DAG実行プロセス中の段階総数。 |
| state | string | DAGの実行状態。 |
| operator | string | DAGの実行操作タイプ。 |
| start_time | time.Time | DAG実行開始時間。 |
| end_time | time.Time | DAG実行終了時間。 |
| additional_data | map[string]any | DAGその他のデータ。 |
| nodes | []NodeDetailDTO | DAG内のすべてのノード情報。詳細はノードの詳細情報を取得するを参照してください。 |
例
リクエスト例
GET 10.10.10.1:2886/api/v1/task/dag/11
戻り値の例
例では、Cluster scale out(スケールアウト)タスクの詳細が返されています。実行操作は RUN、実行結果は SUCCEED です。
{
"successful": true,
"timestamp": "2024-01-09T20:41:08.381582598+08:00",
"duration": 74,
"status": 200,
"traceId": "d085c58bceafa7f9",
"data": {
"id": "11",
"dag_id": 1,
"name": "Cluster scale out",
"stage": 9,
"max_stage": 9,
"state": "SUCCEED",
"operator": "RUN",
"start_time": "2024-01-09T20:40:01.706073+08:00",
"end_time": "2024-01-09T20:40:30.319822+08:00",
"additional_data": {},
"nodes": [
{
"id": "11",
"node_id": 1,
"name": "Integrate server config",
"state": "SUCCEED",
"operator": "RUN",
"start_time": "2024-01-09T20:40:01.718882+08:00",
"end_time": "2024-01-09T20:40:02.751743+08:00",
"additional_data": null,
"sub_tasks": [
{
"id": "11",
"task_id": 1,
"name": "Integrate server config",
"state": "SUCCEED",
"operator": "RUN",
"start_time": "2024-01-09T20:40:01.74723+08:00",
"end_time": "2024-01-09T20:40:01.76717+08:00",
"additional_data": null,
"execute_times": 1,
"execute_agent": {
"ip": "10.10.10.1",
"port": 2886
},
"task_logs": []
}
]
},
{
"id": "12",
"node_id": 2,
"name": "Create local scale out dag",
"state": "SUCCEED",
"operator": "RUN",
"start_time": "2024-01-09T20:40:03.77982+08:00",
"end_time": "2024-01-09T20:40:04.805204+08:00",
"additional_data": null,
"sub_tasks": [
{
"id": "12",
"task_id": 2,
"name": "Create local scale out dag",
"state": "SUCCEED",
"operator": "RUN",
"start_time": "2024-01-09T20:40:03.796683+08:00",
"end_time": "2024-01-09T20:40:03.836712+08:00",
"additional_data": null,
"execute_times": 1,
"execute_agent": {
"ip": "10.10.10.1",
"port": 2886
},
"task_logs": [
"create local scale out dag success, genericID:22130706433028869"
]
}
]
},
{
"id": "13",
"node_id": 3,
"name": "Wait scale out ready",
"state": "SUCCEED",
"operator": "RUN",
"start_time": "2024-01-09T20:40:05.828194+08:00",
"end_time": "2024-01-09T20:40:06.85324+08:00",
"additional_data": null,
"sub_tasks": [
{
"id": "13",
"task_id": 3,
"name": "Wait scale out ready",
"state": "SUCCEED",
"operator": "RUN",
"start_time": "2024-01-09T20:40:05.845011+08:00",
"end_time": "2024-01-09T20:40:05.861857+08:00",
"additional_data": null,
"execute_times": 1,
"execute_agent": {
"ip": "10.10.10.1",
"port": 2886
},
"task_logs": [
"local scale out dag task Be scaling agent is succeed"
]
}
]
},
{
"id": "14",
"node_id": 4,
"name": "Wait remote deploy finish",
"state": "SUCCEED",
"operator": "RUN",
"start_time": "2024-01-09T20:40:07.876596+08:00",
"end_time": "2024-01-09T20:40:13.968817+08:00",
"additional_data": null,
"sub_tasks": [
{
"id": "14",
"task_id": 4,
"name": "Wait remote deploy finish",
"state": "SUCCEED",
"operator": "RUN",
"start_time": "2024-01-09T20:40:07.894515+08:00",
"end_time": "2024-01-09T20:40:13.950807+08:00",
"additional_data": null,
"execute_times": 1,
"execute_agent": {
"ip": "10.10.10.1",
"port": 2886
},
"task_logs": [
"retry stage: 2 successfully",
"remote deploy task is succeed"
]
}
]
},
{
"id": "15",
"node_id": 5,
"name": "Wait remote start finish",
"state": "SUCCEED",
"operator": "RUN",
"start_time": "2024-01-09T20:40:14.996088+08:00",
"end_time": "2024-01-09T20:40:21.091862+08:00",
"additional_data": null,
"sub_tasks": [
{
"id": "15",
"task_id": 5,
"name": "Wait remote start finish",
"state": "SUCCEED",
"operator": "RUN",
"start_time": "2024-01-09T20:40:15.016+08:00",
"end_time": "2024-01-09T20:40:21.079217+08:00",
"additional_data": null,
"execute_times": 1,
"execute_agent": {
"ip": "10.10.10.1",
"port": 2886
},
"task_logs": [
"retry stage: 4 successfully",
"remote start observer task is succeed"
]
}
]
},
{
"id": "16",
"node_id": 6,
"name": "Prev check for scale_out",
"state": "SUCCEED",
"operator": "RUN",
"start_time": "2024-01-09T20:40:22.115167+08:00",
"end_time": "2024-01-09T20:40:23.142216+08:00",
"additional_data": null,
"sub_tasks": [
{
"id": "16",
"task_id": 6,
"name": "Prev check for scale_out",
"state": "SUCCEED",
"operator": "RUN",
"start_time": "2024-01-09T20:40:22.134063+08:00",
"end_time": "2024-01-09T20:40:22.148848+08:00",
"additional_data": null,
"execute_times": 1,
"execute_agent": {
"ip": "10.10.10.1",
"port": 2886
},
"task_logs": [
"PrevCheckTask execute"
]
}
]
},
{
"id": "17",
"node_id": 7,
"name": "Add server for scale_out",
"state": "SUCCEED",
"operator": "RUN",
"start_time": "2024-01-09T20:40:24.167045+08:00",
"end_time": "2024-01-09T20:40:25.194054+08:00",
"additional_data": null,
"sub_tasks": [
{
"id": "17",
"task_id": 7,
"name": "Add server for scale_out",
"state": "SUCCEED",
"operator": "RUN",
"start_time": "2024-01-09T20:40:24.186025+08:00",
"end_time": "2024-01-09T20:40:24.21232+08:00",
"additional_data": null,
"execute_times": 1,
"execute_agent": {
"ip": "10.10.10.1",
"port": 2886
},
"task_logs": [
"AddServerTask execute"
]
}
]
},
{
"id": "18",
"node_id": 8,
"name": "Add agent for scale_out",
"state": "SUCCEED",
"operator": "RUN",
"start_time": "2024-01-09T20:40:26.219246+08:00",
"end_time": "2024-01-09T20:40:27.247243+08:00",
"additional_data": null,
"sub_tasks": [
{
"id": "18",
"task_id": 8,
"name": "Add agent for scale_out",
"state": "SUCCEED",
"operator": "RUN",
"start_time": "2024-01-09T20:40:26.238089+08:00",
"end_time": "2024-01-09T20:40:26.252762+08:00",
"additional_data": null,
"execute_times": 1,
"execute_agent": {
"ip": "10.10.10.1",
"port": 2886
},
"task_logs": []
}
]
},
{
"id": "19",
"node_id": 9,
"name": "Check cluster scale_out whether finished",
"state": "SUCCEED",
"operator": "RUN",
"start_time": "2024-01-09T20:40:28.275457+08:00",
"end_time": "2024-01-09T20:40:30.315618+08:00",
"additional_data": null,
"sub_tasks": [
{
"id": "19",
"task_id": 9,
"name": "Check cluster scale_out whether finished",
"state": "SUCCEED",
"operator": "RUN",
"start_time": "2024-01-09T20:40:28.293296+08:00",
"end_time": "2024-01-09T20:40:30.308244+08:00",
"additional_data": null,
"execute_times": 1,
"execute_agent": {
"ip": "10.10.10.1",
"port": 2886
},
"task_logs": [
"FinishTask execute"
]
}
]
}
]
}
}
関連ドキュメント
コマンドラインでAPIを呼び出すほかに、SDKメソッドを使用してAPIを呼び出すこともできます。
obshell-sdk-pythonを使用したAPIメソッドのリクエスト方法については、タスクの詳細情報を取得するを参照してください。
obshell-sdk-goを使用したAPIメソッドのリクエスト方法については、タスクの詳細情報を取得するを参照してください。