簡體   English   中英

如何在 Databricks 中拋出異常?

[英]How to throw Exception in Databricks?

如果滿足某個條件,我希望我的 Databricks 筆記本失敗。 現在我正在使用dbutils.notebook.exit()但它不會導致筆記本失敗,我會收到郵件,就像筆記本運行成功一樣。 我怎樣才能讓我的筆記本出現故障?

正確,盡管 dbutils.notebook.exit("Custom message") 使作業跳過其余命令,但作業被標記為成功。 如果它是一個python筆記本,我們可以使用raise Exception。 這也將跳過其余的命令,但將作業標記為失敗。

if condition: 
  raise Exception("Custom message")

對我來說,更好的方法是重新引發我在處理后得到的相同異常......我添加了一些我需要的報告,除了:步驟,但隨后重新引發,因此作業的狀態為失敗並在最后一個單元格結果中記錄異常.

例子:

try:
    run_my_job()
except Exception as err:
    log_to_some_place(f"{JOB_NAME} has failed, RunID: {mu_run_id}")
    raise

我在同一條船上,並且肯定 dbutils.notebook.exit() 不會幫助失敗。可以有更好的方法來完成這項工作,但下面的一段代碼會使工作失敗。

status = 'Fail'
if(status=='Fail'):
  10/0
else:
  100/10

暫無
暫無

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

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