Registro em log do script de inicialização

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

Eventos do script de inicialização

Os logs de eventos do cluster capturam dois eventos do script de inicialização: INIT_SCRIPTS_STARTED e INIT_SCRIPTS_FINISHED, indicando quais scripts estão agendados para execução e quais 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 no escopo do cluster são indicados pela chave "cluster".

Observação

Os logs de eventos do cluster não registram eventos de script de inicialização para cada nó de cluster. Apenas um nó é selecionado para representar todos eles.

Onde os logs de script de inicialização são escritos?

Se a entrega de log de cluster estiver configurada para um cluster, os logs do script de inicialização serã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 contêiner específico seria: /Volumes/<catalog>/<schema>/<volume>/<cluster-id>/init_scripts/<cluster-id>_<container-ip>.

Você pode visualizar os logs usando a utilidade do sistema de arquivos (dbutils.fs) ou o fs grupo de comandos. Por exemplo, para listar os logs 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 do cluster não estiver configurada, os logs serão gravados em /databricks/init_scripts. Você pode usar comandos de shell padrão em um notebook para listar e ver os logs:

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

Sempre que um cluster é gerado, ele grava um log na pasta de log do script de inicialização.

Importante

Qualquer usuário que criar um cluster e habilitar a entrega de logs do cluster poderá ver as saídas stderr e stdout dos scripts globais de inicialização. Você deve garantir que os scripts de inicialização global não produzam nenhuma informação confidencial.

Eventos de script de inicialização em logs de diagnóstico

Os logs de diagnóstico do Azure Databricks capturam eventos de criação, edição e exclusão de scripts de inicialização global no tipo de evento globalInitScripts. Veja Eventos de scripts de inicialização global.