我正在尝试获取正在运行的作业的名称。我想获取名称并发送消息。示例:我将作业部署到数据 block 并运行它。我希望这项工作在 slack 开始时使用工作名称发送消息,这就是为什么我想获取当前工作的名称。
最佳答案
Databricks 通过 spark.conf
公开了大量信息 - 配置属性以 spark.databricks.clusterUsageTags.
开头,因此您可以过滤所有配置并搜索必要的信息。
对于作业(以及交互式集群,但略有不同),有一个配置属性 spark.databricks.clusterUsageTags.clusterAllTags
表示一个 JSON 字符串,其中包含一个字典列表,每个字典包含 key
和 value
字段。对于作业,您应该使用 RunName
键作为作业名称,使用 JobId
作为作业 ID。你可以用这样的东西来转换它:
import json
all_tags = {}
for tag in json.loads(spark.conf.get(
"spark.databricks.clusterUsageTags.clusterAllTags")):
all_tags[tag['key']] = tag['value']
job_name = all_tags.get('RunName')
关于python - 在 Databricks 中运行作业时如何获取作业名称。这不是基于笔记本的工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68906871/