Как получить сведения о запуске Azure Databricks notebook

#apache-spark #pyspark #azure-data-factory #databricks #azure-databricks

#apache-spark #pyspark #azure-data-factory #databricks #azure-databricks

Вопрос:

Я использую Azure Data Factory для запуска моей записной книжки databricks, которая создает кластер заданий во время выполнения, теперь я хочу знать статус этих заданий, я имею в виду, были ли они успешными или неудачными. Итак, могу ли я узнать, как я могу получить этот статус запусков, используя идентификатор задания или идентификатор запуска.

Примечание: я не создавал никаких заданий в своей рабочей области databricks, я запускаю свои записные книжки с помощью Azure Data Factory, которая создала кластер заданий во время выполнения, и она запускает эту записную книжку поверх этого кластера, а затем завершает работу этого кластера

Ответ №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('/')

  

Комментарии:

1. Рад узнать, что ваша проблема решена. Вы можете принять это как ответ (нажмите на галочку рядом с ответом, чтобы переключить его с серого на заполненный). Это может быть полезно для других участников сообщества. Спасибо.

Ответ №2:

Вам нужно будет перейти на страницу монитора в Azure Data Factory. Здесь вы сможете выполнить фильтрацию по RunID.

https://learn.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()