Registo do script de inicialização

Os eventos de início e término do script de inicialização são capturados em logs de eventos de cluster. Os detalhes são registados nos registos do cluster. Os eventos de criação, edição e eliminação do script de inicialização global também são capturados nos registos de diagnóstico ao nível da conta.

Eventos de script de inicialização

Os registos de eventos do cluster capturam dois eventos de scripts de inicialização: INIT_SCRIPTS_STARTED e INIT_SCRIPTS_FINISHED, indicando quais os scripts que estão programados para execução e quais os que foram concluídos com êxito. INIT_SCRIPTS_FINISHED também captura a duração da execução.

Os scripts de inicialização global são indicados nos detalhes do evento de log pela chave "global" e os scripts de inicialização com escopo de cluster são indicados pela chave "cluster".

Nota

Os logs de eventos de cluster não registram eventos de script de inicialização para cada nó de cluster; apenas um nó é selecionado para representá-los todos.

Onde são escritos os logs de script init?

Se a entrega de registos do cluster estiver configurada para um cluster, os registos do script de inicialização são gravados em /<cluster-log-path>/<cluster-id>/init_scripts.

Os logs de cada contêiner no cluster são gravados em um subdiretório chamado init_scripts/<cluster-id>_<container-ip>.

Por exemplo, se o caminho dos logs for definido para o volume /Volumes/<catalog>/<schema>/<volume>do Unity Catalog , o caminho para os logs de um contentor específico seria: /Volumes/<catalog>/<schema>/<volume>/<cluster-id>/init_scripts/<cluster-id>_<container-ip>.

Pode visualizar os registos usando a utilidade do sistema de ficheiros (dbutils.fs) ou o fs grupo de comandos. Por exemplo, para listar os registos do cluster 1001-234039-abcde739 enviados para o volume /Volumes/<catalog>/<schema>/<volume>:

databricks fs ls dbfs:/Volumes/<catalog>/<schema>/<volume>/1001-234039-abcde739/init_scripts
1001-234039-abcde739_10_97_225_166
1001-234039-abcde739_10_97_231_88
1001-234039-abcde739_10_97_244_199
databricks fs ls dbfs:/Volumes/<catalog>/<schema>/<volume>/1001-234039-abcde739/init_scripts/1001-234039-abcde739_10_97_225_166
<timestamp>_<log-id>_<init-script-name>.sh.stderr.log
<timestamp>_<log-id>_<init-script-name>.sh.stdout.log

Quando a entrega de logs de cluster não está configurada, os logs são gravados em /databricks/init_scripts. Você pode usar comandos padrão do shell em um bloco de anotações para listar e exibir os logs:

%sh
ls /databricks/init_scripts/
cat /databricks/init_scripts/<timestamp>_<log-id>_<init-script-name>.sh.stdout.log

Sempre que um cluster é iniciado, ele grava um log na pasta de log de script init.

Importante

Qualquer utilizador que crie um cluster e ative a entrega de registos do cluster pode ver a saída stderr e stdout dos scripts de inicialização globais. Você deve garantir que seus scripts de inicialização global não produzam informações confidenciais.

Eventos do script de inicialização nos registos de diagnóstico

Os registos de diagnóstico do Azure Databricks registam eventos de criação, edição e eliminação de scripts de inicialização globais no tipo de evento globalInitScripts. Consulte Eventos de scripts de inicialização global.