Enregistrement du script init

Les événements de début et de fin dans un script init sont capturés dans les journaux des événements de cluster. Les détails sont capturés dans les journaux de cluster. Les événements de création, de modification et de suppression dans un script init global sont également capturés dans les journaux de diagnostic au niveau du compte.

Événements de script init

Les journaux des événements de cluster capturent les deux événements de script ini INIT_SCRIPTS_STARTED et INIT_SCRIPTS_FINISHED, qui indiquent quels scripts sont planifiés pour être exécutés et quels scripts se sont terminés avec succès. INIT_SCRIPTS_FINISHED capture également la durée d’exécution.

Les scripts init globaux sont identifiés dans les détails des événements de journal par la clé "global", et les scripts init associés aux clusters de l’étendue sont identifiés par la clé "cluster".

Notes

Les journaux des événements de cluster ne consignent pas les événements de script init pour chaque nœud de cluster ; un seul nœud est sélectionné pour tous les représenter.

Où sont écrits les journaux des scripts d’initialisation ?

Si la remise des journaux de cluster est configurée pour un cluster, les journaux de scripts init sont écrits dans /<cluster-log-path>/<cluster-id>/init_scripts.

Les journaux de chaque conteneur dans le cluster sont écrits dans un sous-répertoire appelé init_scripts/<cluster-id>_<container-ip>.

Par exemple, si cluster-log-path a la valeur cluster-logs, le chemin des journaux d’un conteneur spécifique est le suivant : dbfs:/cluster-logs/<cluster-id>/init_scripts/<cluster-id>_<container-ip>.

Si le cluster est configuré pour écrire des journaux sur DBFS, vous pouvez afficher les journaux en utilisant l’Utilitaire de système de fichiers (dbutils.fs) ou l’interface CLI DBFS (héritée). Par exemple, si l’ID de cluster est 1001-234039-abcde739 :

dbfs ls dbfs:/cluster-logs/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
dbfs ls dbfs:/cluster-logs/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

Lorsque la remise des journaux de cluster n’est pas configurée, les journaux sont écrits dans /databricks/init_scripts. Vous pouvez utiliser des commandes shell standard dans un notebook pour lister et afficher les journaux :

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

Dès qu’un cluster est lancé, il écrit un journal dans le dossier des journaux de script init.

Important

Tout utilisateur qui crée un cluster et active la remise des journaux de cluster peut afficher les sorties stderr et stdout des scripts init globaux. Vous devez vous assurer que vos scripts init globaux n’affichent pas d’informations sensibles en sortie.

Événements de script d'initialisation dans les journaux de diagnostic

Les journaux de diagnostic dans Azure Databricks capture les événements de création, de modification et de suppression des scripts init globaux sous le type d’événement globalInitScripts. Consultez Événements de scripts d’initialisation globaux.