簡體   English   中英

根據膠水作業運行 ID 獲取工作流名稱

[英]Get workflow name based on glue job run id

我已經創建了一個膠水作業(假設是 job1),它將使用新觸發器用於多個膠水工作流程。 我正在嘗試發送 email 通知以防 job1 失敗。 我正在根據失敗的 cloudwatch 事件(來自 job1)觸發 aws lambda function。

下面是示例事件響應(python 中的事件 object):

{
    "account": "12345678",
    "detail": {
        "jobName": "job1",
        "jobRunId": "jr_12355686960",
        "message": "Exception: Expecting value: line 1 column 1 (char 0)",
        "severity": "ERROR",
        "state": "FAILED"
    },
    "detail-type": "Glue Job State Change",
    "id": "fef2d09adasdasdasdasdas-d3-05f3a07adf70",
    "region": "us-east-1",
    "resources": [],
    "source": "aws.glue",
    "time": "2021-09-28T08:51:39Z",
    "version": "0"
}

以上事件響應通過 lambda function 發送為 email。由於 job1 在多個工作流中重復使用,我還想在 email 中包含失敗的工作流名稱。似乎沒有 API 可以根據上述詳細信息獲取工作流名稱(例如,使用作業運行 ID 或作業名稱)。 如果還有其他方法(lambda函數除外)歡迎大家評論。

SDK get_job() 命令 (boto3: get_job() ) 在響應中返回幾個屬性,例如名稱、描述等。 那可能有你想要的。 否則,另一個 get_x 或 describe_x 命令可能會包含您想要的信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM