如何获取 Azure Databricks 笔记本运行详细信息

Posted

技术标签:

【中文标题】如何获取 Azure Databricks 笔记本运行详细信息【英文标题】:How to fetch Azure Databricks notebook run details 【发布时间】:2020-10-06 06:31:18 【问题描述】:

我正在使用 Azure 数据工厂运行我的 databricks 笔记本,它在运行时创建作业集群,现在我想知道这些作业的状态,我的意思是它们是成功还是失败。 所以我可以知道,我怎样才能通过使用作业 ID 或运行 ID 来获取运行状态。

注意:我没有在我的 databricks 工作区中创建任何作业,我正在使用 Azure 数据工厂运行我的笔记本,它在运行时创建了作业集群,它在该集群之上运行该笔记本,然后终止该集群

【问题讨论】:

【参考方案1】:
import json
import requests

gethooks= "https://" + databricks_instance_name + "/api/2.0/jobs/runs/list"     #add your databricks workspace instance name over here
headers="Authorization": "Bearer ********************"        # Add your databricks access token
response = requests.get(gethooks, headers=headers)

print(response.json())      # you will get all cluster and job related info over here in json format

# traversing through response.json
for element in response.json()['runs']:
    job_id = element['job_id']
    status = element['state']['result_state']
    job_path = element['task']['notebook_task']['notebook_path']
    job_name = job_path.split('/')

【讨论】:

很高兴知道您的问题已解决。您可以接受它作为答案(单击答案旁边的复选标记以将其从灰色切换为已填充)。这对其他社区成员可能是有益的。谢谢。【参考方案2】:

您必须转到 Azure 数据工厂中的监控页面。您可以在此处按 runId 进行过滤。

https://docs.microsoft.com/en-us/azure/data-factory/transform-data-using-databricks-notebook#monitor-the-pipeline-run

【讨论】:

【参考方案3】:

https://forums.databricks.com/questions/12134/possible-to-get-job-run-id-of-notebook-run-by-dbut.html

dbutils.notebook.entry_point.getDbutils().notebook().getContext().toJson() 

【讨论】:

以上是关于如何获取 Azure Databricks 笔记本运行详细信息的主要内容,如果未能解决你的问题,请参考以下文章

如何根据 azure databricks 中的列值将静态值传递给动态值

作业终止后如何将生成的文件从 Azure Databricks 导出到 Azure DevOps?

如何在 Azure 数据工厂的 Databricks 上运行 .Net spark 作业?

以编程方式导入/导出 (Azure) Databricks Notebooks

从 Azure Databricks 笔记本登录到 Azure ML 工作区

Azure - 为存储容器中的每个新 blob 触发 Databricks 笔记本