Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如何将变量传递到Azure Databricks群集初始化脚本_Linux_Bash_Databricks_Azure Databricks - Fatal编程技术网

Linux 如何将变量传递到Azure Databricks群集初始化脚本

Linux 如何将变量传递到Azure Databricks群集初始化脚本,linux,bash,databricks,azure-databricks,Linux,Bash,Databricks,Azure Databricks,我试图使用工作区环境变量将访问令牌传递到自定义集群初始化脚本中 似乎只有少数受支持的环境变量可以在自定义集群初始化脚本中访问,如中所述 我已尝试使用写入基本群集配置 Microsoft.Azure.Databricks.Client.SparkEnvironmentVariables.Add(“WORKSPACE\u ID”,workspaceId) 我的init脚本仍无法在以下行中使用此变量: [[-z“${WORKSPACE_ID}]”和&LOG_ANALYTICS_WORKSPACE_I

我试图使用工作区环境变量将访问令牌传递到自定义集群初始化脚本中

似乎只有少数受支持的环境变量可以在自定义集群初始化脚本中访问,如中所述

我已尝试使用写入基本群集配置

Microsoft.Azure.Databricks.Client.SparkEnvironmentVariables.Add(“WORKSPACE\u ID”,workspaceId)
我的init脚本仍无法在以下行中使用此变量:

[[-z“${WORKSPACE_ID}]”和&LOG_ANALYTICS_WORKSPACE_ID='default'| | LOG_ANALYTICS_WORKSPACE_ID=“${WORKSPACE_ID}”
使用上述代码行,我的init脚本会导致集群失败,并出现以下错误:

Spark Error: Spark encountered an error on startup. This issue can be caused by
invalid Spark configurations or malfunctioning init scripts. Please refer to the Spark
driver logs to troubleshoot this issue, and contact Databricks if the problem persists.
Internal error message: Spark error: Driver down
日志并没有说我的bash脚本的任何部分都失败了,所以我假设它只是未能从环境变量中提取变量

还有其他人处理过这个问题吗?我意识到我可以将此信息写入dbfs,然后将其读入init脚本,但我希望避免这样做,因为我将传递访问令牌。我还可以尝试其他方法吗

谢谢你的帮助

这显示了如何将应用程序日志和度量从Azure Databricks发送到日志分析工作区。它使用Azure Databricks监控库,该库在上提供

先决条件:配置Azure Databricks群集以使用监控库,如中所述

构建Azure监控库和配置Azure Databricks群集的步骤:

步骤1:构建Azure Databricks监控库

步骤2:创建和配置Azure Databricks群集

有关详细信息,请参阅“”

希望这有帮助。

这展示了如何将应用程序日志和度量从Azure Databricks发送到日志分析工作区。它使用Azure Databricks监控库,该库在上提供

先决条件:配置Azure Databricks群集以使用监控库,如中所述

构建Azure监控库和配置Azure Databricks群集的步骤:

步骤1:构建Azure Databricks监控库

步骤2:创建和配置Azure Databricks群集

有关详细信息,请参阅“”


希望这有帮助。

我如何使用它来设置集群上的环境变量?这并不能真正回答问题。我如何使用它来设置集群上的环境变量?这并不能真正回答问题。作为init脚本运行
env
的一部分,您可以将输出定向到已知的文件位置,如
env>/dbfs/output.log
,或者直接从集群中检出日志。这样,您至少可以看到哪些环境变量可用。得到这样的结果将有助于更轻松地调试代码。还要确保检查驱动程序和执行程序的日志。UI仅显示驱动程序日志,在某些情况下,这些日志可能没有帮助。最好是将日志发送到一个桶中,然后您将拥有来自驱动程序和所有执行者的日志,您可以搜索并了解实际发生的情况。您是否找到了解决方案。我有完全相同的用例作为init脚本运行的一部分
env
,您可以将输出定向到已知的文件位置,如
env>/dbfs/output.log
,或者直接从集群中检出日志。这样,您至少可以看到哪些环境变量可用。得到这样的结果将有助于更轻松地调试代码。还要确保检查驱动程序和执行程序的日志。UI仅显示驱动程序日志,在某些情况下,这些日志可能没有帮助。最好是将日志发送到一个桶中,然后您将拥有来自驱动程序和所有执行者的日志,您可以搜索并了解实际发生的情况。您是否找到了解决方案。我有完全相同的用例