Skip To Content

Publier un notebook sous forme d’outil Web

À compter de la version 10.9.1, ArcGIS Notebooks prend en charge la publication des notebooks en tant qu’outils Web. Les administrateurs, ainsi que les auteurs de notebooks avec des privilèges de publication d’outils Web, peuvent publier leurs propres notebooks sous forme d’outils Web. Lorsqu’un notebook est publié sous la forme d’un outil Web, un service de géotraitement asynchrone est créé sur la machine ArcGIS Notebook Server et inscrit en tant qu’outil Web. Il existe une relation un à un entre le notebook et l’outil Web, ce qui implique qu’il n’est possible de publier qu’un seul outil Web par notebook et que l’élément d’outil Web se voit attribué les mêmes autorisations que le notebook parent. Les outils Web sont utilisables par n’importe quelle application client compatible avec les services de géotraitement asynchrones RESTful.

La publication d’un notebook en tant qu’outil Web est prise en charge pour les notebooks dont la version de runtime est 6.0 ou supérieure. Pour vérifier les informations du runtime d’un notebook, cliquez sur le bouton Info (Informations) sur le ruban supérieur de l’éditeur de notebooks ou dans l’onglet Settings (Paramètres) de la page Notebook Item (Élément de notebook). Pour en savoir plus sur les runtimes de notebooks, consultez Afficher les bibliothèques Python disponibles.

Dans la version 10.9.1, une nouvelle fonctionnalité de l’éditeur de notebooks vous permet de configurer les paramètres en entrée et en sortie d’un notebook. Les paramètres en entrée correspondent aux variables en entrée d’un notebook à externaliser pour la saisie utilisateur lorsque le notebook est exécuté comme outil Web. Les paramètres en sortie représentent les variables en sortie d’un notebook à renvoyer comme sorties d’outil Web. Lorsque vous inscrivez une ou plusieurs variables en entrée ou en sortie et que vous publiez un notebook, les paramètres sont proposés comme paramètres en entrée ou en sortie pour l’outil Web correspondant.

Remarque :

Il n’est pas indispensable de définir des paramètres en entrée ou en sortie pour publier un notebook sous la forme d’un outil Web. Par exemple, les notebooks qui exécutent des tâches avec des entrées et sorties prédéfinies, comme les couches d’entités référencées par itemId, ne requièrent pas nécessairement des paramètres en entrée ou en sortie.

Remarque :

Les types de données suivants sont pris en charge comme paramètres en entrée ou en sortie : chaîne, long, réel double, booléen, jeu d’entités, jeu d’enregistrements, date et unité linéaire. Pour plus d’informations, reportez-vous à la rubrique Geoprocessing services data types de la documentation de ArcGIS Notebook Server REST API (en anglais uniquement).

Lorsqu’un outil Web est utilisé, ArcGIS Notebook Server exécute automatiquement le notebook sur sa machine serveur en ouvrant un nouveau conteneur et en exécutant le notebook sans intervention de l’utilisateur. Les utilisateurs qui bénéficient de privilèges de notebook et avec lesquels le notebook a été partagé ont accès à l’outil Web et peuvent donc l’exécuter. Outre les privilèges concernant les notebooks requis, il convient de disposer de tous les autres privilèges nécessaires à l’exécution du notebook.

Remarque :

Si, lorsque vous créez un notebook à partager comme outil Web, le notebook référence un fichier de votre répertoire d’espace de travail comme données en entrée, les autres utilisateurs avec lesquels le notebook ou l’outil Web est partagé n’ont pas accès à ce fichier. Si certains de vos fichiers doivent être référencés comme données en entrée dans le notebook, vous pouvez les référencer par le biais d’un élément de portail partagé dans Portal for ArcGIS ou les charger et les référencer à partir d’un répertoire de données personnalisées inscrit auprès de ArcGIS Notebook Server.

Par défaut, ArcGIS Notebook Server est configuré pour traiter un maximum de 10 exécutions de notebook non interactives simultanées par machine ArcGIS Notebook Server. Sont incluses les exécutions déclenchées par des outils Web, des tâches planifiées, l’API executeNotebook et des déclencheurs de webhook. Les administrateurs peuvent augmenter cette limite en cas de besoin.

Remarque :

Si vous ne voyez pas l’option Parameters (Paramètres) ou l’option Publish (Publier) dans l’éditeur de notebooks, c’est que vous ne disposez pas des privilèges de publication d’outils Web ou que vous n’êtes pas le propriétaire du notebook. Dans un notebook nouvellement créé, les options Parameters (Paramètres) et Publish (Publier) ne sont pas affichées tant qu’il n’a pas été enregistré.

Configurer les paramètres en entrée

Les paramètres en entrée représentent les variables en entrée d’un notebook qui sont externalisées lorsqu’un notebook est exécuté comme outil Web. Vous pouvez utiliser la fenêtre Parameters (Paramètres) de l’éditeur de notebooks pour configurer des paramètres en entrée comme variables et les ajouter à votre notebook.

  1. Dans l’éditeur de notebooks, cliquez sur Parameters (Paramètres).
  2. Cliquez sur Add (Ajouter).
  3. Sélectionnez l’entrée comme paramètre Direction.
  4. Indiquez un nom dans Variable name (Nom de variable).

    Remarque :
    Ce nom doit être identique à un nom de variable qui se trouve dans le code du notebook ou qui est déjà configuré dans le notebook.

  5. Indiquez un nom dans Display name (Nom d’affichage) pour le paramètre de l’outil Web.
  6. Dans le menu déroulant Data type (Type de données), sélectionnez un type de données pour le paramètre en entrée.
  7. Indiquez une valeur dans Default value pour le paramètre en entrée. Pour connaître la syntaxe des valeurs par défaut des types de données pris en charge, reportez-vous à la rubrique Geoprocessing services data types (en anglais uniquement).
  8. Dans Description, entrez une description du paramètre en entrée.
  9. Cliquez sur Save (Enregistrer) pour enregistrer le paramètre en entrée.
  10. Répétez les étapes 1 à 9 pour ajouter d’autres paramètres en entrée.
  11. Après avoir ajouté tous les paramètres en entrée souhaités, sélectionnez une cellule de votre notebook dans laquelle les insérer et cliquez sur Insert as variables (Insérer comme variables).
  12. Cliquez sur Save (Enregistrer) pour enregistrer le notebook.

Configurer les paramètres en sortie

Pour configurer la sortie d’un notebook publié sous la forme d’un outil Web, vous pouvez configurer des paramètres en sortie dans la fenêtre Parameters (Paramètres) de l’éditeur de notebooks.

  1. Dans l’éditeur de notebooks, cliquez sur Parameters (Paramètres).
  2. Cliquez sur Add (Ajouter).
  3. Sélectionnez la sortie comme paramètre Direction.
  4. Indiquez un nom dans Variable name.

    Remarque :
    Ce nom doit être identique à un nom de variable qui se trouve dans le code du notebook ou qui est déjà configuré dans le notebook.

  5. Indiquez un nom dans Display name pour le paramètre de l’outil Web.
  6. Dans le menu déroulant Data type, sélectionnez un type de données pour le paramètre en sortie.
  7. Indiquez une valeur dans Default value pour le paramètre en sortie. Pour connaître la syntaxe des valeurs par défaut des types de données pris en charge, reportez-vous à la rubrique Geoprocessing services data types (en anglais uniquement).
  8. Pour Description, saisissez la description du paramètre en sortie.
  9. Cliquez sur Save (Enregistrer) pour enregistrer le paramètre en sortie.
  10. Sélectionnez une cellule dans votre notebook. Cliquez sur le bouton Add (Ajouter) afin d’ajouter l’extrait de code Python requis pour écrire la sortie de l’outil Web.

    Il est recommandé de sélectionner une cellule proche de la partie inférieure du notebook, en dessous des cellules où les sorties sont créées.

  11. Vérifiez que les noms de variable en sortie figurant dans l’extrait de code ajouté correspondent à la sortie définie dans le notebook, et apportez d’autres modifications à l’extrait de code si nécessaire.
  12. Répétez les étapes 1 à 11 pour ajouter d’autres paramètres en sortie.
  13. Cliquez sur Save (Enregistrer) pour enregistrer le notebook.

Publier un outil Web

Vous pouvez utiliser la fenêtre Publish (Publier) de l’éditeur de notebooks pour publier un notebook sous la forme d’un outil Web.

  1. Enregistrez le notebook pour vous assurer de publier sa dernière copie.
  2. Exécutez manuellement les cellules du notebook de manière interactive pour vérifier l’absence d’erreurs.
  3. Remarque :
    Ignorez les cellules qui contiennent les extraits de code pour les paramètres en sortie, car elles ne sont pas exécutées en mode interactif.
  4. Cliquez sur Publish (Publier) dans le ruban de l’éditeur de notebooks.
  5. Indiquez un titre et une description pour l’outil Web dans les champs Title et Description de la fenêtre Publish (Publier).
  6. Vérifiez les paramètres en entrée et en sortie.
  7. Cliquez sur Publish (Publier) pour publier le notebook sous la forme d’un outil Web.
  8. Après la publication de l’outil Web, cliquez sur View detail (Afficher les détails) pour consulter la page des détails des éléments correspondant à l’outil Web.

Supprimer un outil Web

Vous pouvez supprimer un service de géotraitement publié à partir d’un notebook en supprimant l’élément d’outil Web.

  1. Dans le ruban supérieur de l’éditeur de notebooks, cliquez sur Publish (Publier).
  2. Cliquez sur View detail (Afficher les détails) pour consulter la page des détails des éléments correspondant à l’outil Web.
  3. Cliquez sur Settings (Paramètres).
  4. Cliquez sur Delete item (Supprimer l’élément), puis confirmez votre souhait de supprimer l’élément d’outil Web ainsi que le service de géotraitement publié sur ArcGIS Notebook Server.

Modifier un paramètre en entrée ou en sortie

Vous pouvez modifier un paramètre en entrée ou en sortie dans la fenêtre Parameters (Paramètres) de l’éditeur de notebooks.

Remarque :

Si un notebook a déjà été publié sous la forme d’un outil Web, vous devez cliquer sur le bouton bascule Enable editing (Activer la mise à jour) dans la fenêtre Parameters (Paramètres) pour pouvoir modifier les paramètres. La prudence s’impose pour toutes modifications de paramètres après la publication du notebook sous la forme d’un outil Web. En effet, certains changements peuvent interrompre l’exécution des applications Web qui utilisent l’outil Web.

  1. Dans le ruban supérieur de l’éditeur de notebooks, cliquez sur Parameters (Paramètres).
  2. Cliquez sur le bouton d’options en regard du paramètre, puis sur Edit (Mettre à jour).
  3. Mettez à jour le paramètre, puis cliquez sur Save (Enregistrer).
    1. Si un paramètre en entrée a été mis à jour, effacez manuellement le contenu de la cellule existante ou supprimez-la avec les variables en entrée, puis répétez l’étape qui permet d’insérer les paramètres en entrée comme variables dans le notebook.
    2. Si un paramètre en sortie a été mis à jour, effacez manuellement l’extrait de code correspondant à la variable en sortie, puis répétez les étapes qui permettent d’ajouter au notebook l’extrait de code pour le paramètre en sortie.
  4. Cliquez sur Save (Enregistrer) pour enregistrer le notebook.

Supprimer un paramètre en entrée ou en sortie

Vous pouvez supprimer des paramètres en entrée ou en sortie dans la fenêtre Parameters (Paramètres).

  1. Dans le ruban supérieur de l’éditeur de notebooks, cliquez sur Parameters (Paramètres).
  2. Cliquez sur le bouton d’options en regard du paramètre, puis sur Delete (Supprimer).
  3. Cliquez sur Delete (Supprimer) pour supprimer définitivement le paramètre.
  4. Effacez manuellement la variable en entrée ou l’extrait de code en sortie, ou supprimez-les, dans le notebook.
  5. Cliquez sur Save (Enregistrer) pour enregistrer le notebook.

Utiliser l’étendue de la carte

Lorsque vous exécutez un outil Web dans Map Viewer Classic, l’étendue de la carte est transmise au notebook en tant que variable Python nommée context, avec les autres paramètres en entrée, comme illustré ci-dessous.

context = {
    "extent": {
        "ymin": -25203428.462408017,
        "xmin": -46101923.491795965,
        "ymax": 25203428.462407943,
        "xmax": 46101923.491795965,
        "spatialReference": {
            "wkt": "PROJCS[\"WGS_1984_Web_Mercator_Auxiliary_Sphere\",GEOGCS[\"GCS_WGS_1984\",DATUM[\"D_WGS_1984\",SPHEROID[\"WGS_1984\",6378137.0,298.257223563]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]],PROJECTION[\"Mercator_Auxiliary_Sphere\"],PARAMETER[\"False_Easting\",0.0],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",0],PARAMETER[\"Standard_Parallel_1\",0.0],PARAMETER[\"Auxiliary_Sphere_Type\",0.0],UNIT[\"Meter\",1.0]]"
        },
    }
}

Vous pouvez utiliser la valeur de la variable context pour définir l’étendue des processus d’analyse spatiale dans le notebook. Pour tester les processus d’analyse spatiale avec une étendue de carte avant de publier le notebook en tant qu’outil Web, déclarez la variable context avec une valeur par défaut.

Lorsque vous êtes prêt à effectuer la publication, insérez les paramètres en entrée sous forme de variables après la cellule dans laquelle vous déclarez la variable context.

Résoudre les problèmes liés à un outil Web

Après la publication d’un notebook sous la forme d’un outil Web, vous pouvez vérifier le bon fonctionnement de l’outil Web en exécutant la tâche à partir du répertoire des services ArcGIS Notebook Server.

  1. Dans un navigateur Web, ouvrez le répertoire des services ArcGIS Notebook Server https://notebookserver.domain.com/webadaptorcontext/rest/services.
  2. Connectez-vous en tant que propriétaire de l’outil Web.
  3. Recherchez le service, puis accédez à la page des tâches.
  4. Cliquez sur Submit job (Soumettre la tâche).
  5. Indiquez des paramètres en entrée, puis cliquez sur Submit job (Soumettre la tâche).
  6. Vous pouvez également cliquer sur le lien Check Job Details Again (Revérifier les détails de la tâche) pour vérifier le statut de la tâche.

    Si l’exécution de l’outil Web aboutit, des liens d’accès aux sorties sont disponibles. Un aperçu HTML de l’exécution du notebook est généré en sortie par défaut, que l’exécution soit concluante ou non.

  7. Téléchargez l’aperçu HTML du notebook, puis affichez-le pour vérifier si des problèmes sont survenus au cours de l’exécution de l’outil Web.
  8. Si l’exécution de l’outil Web échoue, vérifiez que le notebook s’exécute correctement dans l’éditeur de notebooks.