在 Spark 作业中获取 Databricks 集群 ID(或获取集群链接)

Luc*_*eca 8 pyspark databricks databricks-workflows

我想要在正在运行的 Spark 作业中获取集群链接(或手动组成链接的集群 ID)。

这将用于打印警报消息中的链接,使工程师更容易访问日志。

是否可以在 Databricks 中运行的 Spark 作业中实现这一目标?

Ale*_*Ott 15

当 Databricks 集群启动时,会添加许多 Spark 配置属性。其中大多数的名称以 - 开头,您可以在Spark UI 的选项卡spark.databricks.中找到所有这些。Environment

集群 ID 作为属性提供spark.databricks.clusterUsageTags.clusterId,您可以通过以下方式获取它:

spark.conf.get("spark.databricks.clusterUsageTags.clusterId") 
Run Code Online (Sandbox Code Playgroud)

dbutils.notebook.getContext().apiUrl.get您可以通过调用(对于 Scala)或dbutils.notebook.entry_point.getDbutils().notebook().getContext().apiUrl().get()(对于 Python)获取工作区主机名