取消
顯示的結果
而不是尋找
你的意思是:

有可能被dbutils.notbook.run作業運行ID的筆記本運行嗎?

hanspetter
新的貢獻者三世

運行一個筆記本使用時從master-notebook dbutils.notebook.run,運行筆記本電腦打印的url,例如:

筆記本的工作# 223150

筆記本的工作# 223151

有什麼方法來捕捉工作運行ID(# 223150和# 223151)?我們有50個左右的筆記本電腦運行在並行,如果其中一個失敗會很高興見到的實際運行筆記本沒有點擊每個url找到正確的一個。

謝謝:slightly_smiling_face:

1接受解決方案

接受的解決方案

hanspetter
新的貢獻者三世

這就跟你問聲好!很長時間以來我已經看了這個問題,但我本周重新審視它,找到了一個解決方案。:slightly_smiling_face:

這將返回一個json包含關於筆記本的信息:

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

如果筆記本已經被dbutils.notebook.run觸發,我們能在這裏找到標記“jobId”。所以我們可以使用dbutils.notebook.exit返回jobid (job_id):

.notebook進口json notebook_info = json.loads (dbutils.notebook.entry_point.getDbutils () () .getContext () .toJson())試題:#標簽jobId不存在時引發的筆記本不是dbutils.notebook.run (…) jobId = notebook_info(“標記”)(“jobId”):除了jobId = 1 dbutils.notebook.exit (jobId)

當執行筆記本我們得到:

jobid = dbutils.notebook.run(…)打印(jobid)

這個輸出:

筆記本的工作# 1522478

1522478

好吧,這隻能當一個筆記本成功完成。我們所做的是我們一起插入jobid和筆記本路徑與當前時間戳到這個表和查詢的表在異常發生時jobid。

在原帖子查看解決方案

18日回複18

AugustoElesbao
新的貢獻者二世

@hanspetter你可以得到的信息通過命令上下文:

dbutils.notebook.getContext.currentRunId

此外,下列方法(val)上下文中可用:

  1. jobGroup:選項(字符串)——唯一的命令標識符所注入的司機。
  2. rootRunId:選項(RunId)
  3. 標簽:地圖(字符串,字符串)- webapp歸因標簽注入

naman1994
新的貢獻者三世

有什麼發展,currentRunId似乎不工作(我在python)

你使用@naman1994檢查磚的運行時版本。我知道,這與3.5,但是沒有測試4.0。

naman1994
新的貢獻者三世

我的3.5 LTS,它說,“NotebookHandler實例沒有屬性getContext”

歡迎來到磚社區:讓學習、網絡和一起慶祝

加入我們的快速增長的數據專業人員和專家的80 k +社區成員,準備發現,幫助和合作而做出有意義的聯係。

點擊在這裏注冊今天,加入!

參與令人興奮的技術討論,加入一個組與你的同事和滿足我們的成員。

Baidu
map