Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Dừng Workflow trong AWS Glue Data Catalog với Boto3

Dùng boto3 gọi stop_workflow_run để dừng một lần chạy workflow cụ thể (cần workflow_name và run_id).

Quy trình

  1. Import boto3, ClientError.
  2. Hàm nhận workflow_name và run_id.
  3. Tạo session, client Glue.
  4. Gọi glue_client.stop_workflow_run(Name=..., RunId=...).
  5. Trả về response metadata.
  6. Xử lý ngoại lệ.

Code mẫu

import boto3
from botocore.exceptions import ClientError

def dung_workflow(workflow_name, run_id):
    session = boto3.session.Session()
    glue_client = session.client('glue')
    try:
        response = glue_client.stop_workflow_run(Name=workflow_name, RunId=run_id)
        return response
    except ClientError as e:
        raise Exception("Lỗi boto3 client: " + str(e))
    except Exception as e:
        raise Exception("Lỗi không mong đợi: " + str(e))

print(dung_workflow("test-daily", "wr_64e88024..."))

Kết quả

{'RunId': 'wr_64e88024...', 'ResponseMetadata': {'RequestId': '782e953b-...', 'HTTPStatusCode': 200, ...}}