Skip to main content

Propriétés de service avancées

Pour certains processus, les administrateurs peuvent être amenés à ajuster les propriétés des services de géotraitement publiés. Ces ajustements s’appliquent aussi bien aux serveurs autonomes qu’aux serveurs fédérés. Voici quelques exemples :

  • analyse spatiale avec de grands jeux de données raster nécessitant une mémoire importante ;

  • chargement de gros fichiers d’entrée pour un outil Web ou un service de géotraitement ;

  • optimisation des performances ;

  • exigences de journalisation personnalisées ;

  • obtention d’une sortie de diagnostic supplémentaire en cas de panne d’un service de géotraitement ;

  • contrôle de la visibilité des tâches individuelles au sein d’un service de géotraitement.

D’autres scénarios courants nécessitant d’ajuster ces propriétés incluent l’optimisation des performances, les exigences de journalisation personnalisées, l’obtention d’une sortie de diagnostic supplémentaire en cas de panne d’un service de géotraitement et le contrôle de la visibilité des tâches individuelles au sein d’un service de géotraitement.

La plupart des propriétés décrites ci-dessous peuvent uniquement être configurées à l’aide de l’API REST administrateur. Une fois que vous ou votre administrateur avez accès à l’API REST administrateur, vous devez mettre à jour les propriétés de chaque service de géotraitement que vous devez modifier.

Modifier la taille du segment de mémoire

La propriété de taille du segment contrôle la taille maximale de fichier qui peut être fournie par le client lors de l’accès à l’outil Web ou au service de géotraitement d’ArcGIS Pro, ainsi que la mémoire maximale qu’un service de géotraitement peut utiliser. La taille du segment peut être définie au niveau du serveur pour tous les services de géotraitement, ou pour un seul service.

La modification de la taille du segment pour un service individuel offre de meilleures performances que la modification de la taille du segment pour tous les services sur l’ensemble du serveur. Pour chaque service, la taille par défaut du segment est de 64 Mo. Si vous disposez d’un fichier ou d’une classe d’entités en entrée dont la taille est supérieure à la taille par défaut, modifiez la taille du segment de mémoire du service comme suit :

  1. Accédez au point de terminaison Edit the service properties (Mettre à jour les propriétés du service) du service de géotraitement à modifier. En général, ce sera https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit.

  2. Examinez la propriété frameworkProperties existante, généralement en bas de la liste des propriétés du service.

    Un exemple de propriétés de service au format JSON

  3. Si la propriété javaHeapSize n’est pas répertoriée dans frameworkProperties, ajoutez l’exemple {"javaHeapSize":"128"}. Si la propriété javaHeapSize apparaît, augmentez la valeur de manière appropriée.

  4. Cliquez sur Save Edits (Enregistrer les mises à jour) pour enregistrer et terminer les mises à jour.

Pour modifier la taille du segment pour tous les services de géotraitement sur l’ensemble du serveur, procédez comme suit. Par défaut, la taille maximale du segment de mémoire du composant des objets serveur (SOC, server object component) est définie sur 64 Mo. Augmentez-la d’une quantité appropriée.

  1. Accédez au point de terminaison Edit machines (Mettre à jour les machines). En général, c’est https://organization.example.com/serverwebadaptor/admin/machines/machinename/edit

  2. Augmentez la valeur du paramètre Taille maximale du segment de mémoire SOC (en Mo).

  3. Cliquez sur Save Edits (Enregistrer les mises à jour) pour terminer les mises à jour.

Définir la taille du téléchargement

Le paramètre de la taille du téléchargement permet de contrôler la taille du fichier qui peut être téléchargé par les clients qui se connectent au service via une extrémité REST. Il s’agit généralement de clients Web qui utilisent le service via une application Web personnalisée. Par défaut, la limite est définie sur 2 Go. Utilisez ce paramètre pour fournir une valeur par défaut appropriée et éviter les téléchargements volumineux pour le service.

Pour définir la taille du chargement, accédez au point de terminaison Edit the service properties (Mettre à jour les propriétés du service) du service de géotraitement à modifier. En général, ce sera https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit. Mettez à jour la valeur de la propriété maxUploadFileSize. Exemple d’entrée limitant la taille maximale de chargement de fichier à 100 Mo : "maxUploadFileSize": 100,.

Remarque :

Lorsque vous publiez un outil Web, assurez-vous que la case Uploads (Chargements) du volet Configuration de la fenêtre Share As Web Tool (Partager en tant qu’outil Web) est cochée. Vous pouvez également activer ce paramètre sur un service existant via ArcGIS Server Manager, sur la page des paramètres Capabilities (Fonctionnalités) du service.

Définir le type de téléchargement

Vous ne pouvez charger que certains fichiers dans un outil web. Les fichiers autorisés sont identifiés par leur type d’extension, qui est défini au niveau du service.

Pour définir le type du chargement, accédez au point de terminaison Edit the service properties (Mettre à jour les propriétés du service) du service de géotraitement à modifier. En général, ce sera https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit. Mettez à jour la propriété allowedUploadFileTypes en ajoutant les extensions de fichier à autoriser. Exemple de propriété autorisant les fichiers .kml et .gpx : est "allowedUploadFileTypes": ".kml,.gpx".

Remarque :

Lorsque vous publiez un outil Web, assurez-vous que la case Uploads (Chargements) du volet Configuration de la fenêtre Share As Web Tool (Partager en tant qu’outil Web) est cochée. Vous pouvez également activer ce paramètre sur un service existant via ArcGIS Server Manager, sur la page des paramètres Capabilities (Fonctionnalités) du service.

Modifier le nombre maximal de domaines

Le paramètre maxDomainCodeCount permet de contrôler le nombre de domaines renvoyés avec une réponse du service. Les descriptions du domaine correspondent à un code renvoyé avec la réponse de sortie de l’entité. Ce paramètre a 1 000 comme valeur par défaut. Si les entités en sortie ont plus de 1 000 domaines participants, aucune information de domaine n’est renvoyée. Le fait de renvoyer les informations de domaine peut accroître la taille de la réponse. Si les domaines ne sont pas nécessaires, définissez cette valeur sur 0 ou sur une valeur inférieure au nombre de domaines en service.

Pour modifier le nombre maximal de domaines, accédez au point de terminaison Edit the service properties (Mettre à jour les propriétés du service) du service de géotraitement à modifier. En général, ce sera https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit. Mettez à jour la propriété maxDomainCodeCount et fixez la limite maximale. Exemple de restriction du nombre maximal de domaines à 50 : "maxDomainCodeCount": 50,.

Dossier temporaire local

Le dossier temporaire local désigne un répertoire dans lequel ArcGIS Server écrit les sorties intermédiaires lorsque le serveur fait partie d’un cluster composé de plusieurs machines ou lorsque les répertoires sont référencés à l’aide d’un chemin UNC. Cela peut améliorer les performances en évitant l’écriture de données intermédiaires dans une géodatabase de données ou un dossier temporaire de chemin UNC. À la fin de l’exécution, les résultats sont copiés depuis le dossier temporaire local vers le répertoire de tâches, qui peut être un chemin UNC. Un dossier temporaire local typique pour ArcGIS Server sur Windows peut être c:/Users/arcgisuser/AppData/Local/Temp/system/servicename_gpserver/jobID/scratch. Actuellement, cet emplacement de dossier temporaire ne peut pas être modifié après le déploiement de votre serveur.

Réutiliser le répertoire des tâches pour les services synchrones

Si votre outil Web est basé sur un service de géotraitement synchrone, vous pouvez réutiliser le répertoire des tâches pour de meilleures performances en appliquant "reusejobdir": "true". Normalement, chaque fois que vous exécutez un service de géotraitement synchrone, un dossier de tâches est créé dans le dossier arcgisjobs sur votre machine serveur. À l’issue, ArcGIS Server supprime ce dossier de tâches. En définissant la propriété reusejobdir sur true, le dossier de tâches est conservé après l’exécution d’une tâche. Cela peut faire gagner du temps en créant une géodatabase temporaire et un dossier temporaire pour la prochaine exécution, fournissant ainsi des avantages en matière de performance. En option, lorsque vous définissez cette propriété à nouveau sur "false", ou supprimez cette propriété, contactez votre administrateur pour supprimer tout dossier de tâches pour ce service.

Accédez au point de terminaison Edit the service properties (Mettre à jour les propriétés du service) du service de géotraitement à modifier. En général, ce sera https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit.

Voici un fichier JSON simplifié affichant la propriété reusejobdir. Les autres propriétés ont été masquées pour mettre en avant la modification concernant cette propriété.

{
 "serviceName": "sample",
 "type": "GPServer",
 "other_properties": "other_values",
 "properties": {
     "other_properties": "other_values",
     "reusejobdir": true,
     "executionType": "Synchronous"
 },
 "portalProperties": {},
 "extensions": []
}

Consigner des messages dans le journal d’ArcGIS Server

Si un outil Web est publié sur ArcGIS Server 11.3 ou une version ultérieure, vous pouvez inclure une copie des messages de l’outil Web dans le journal d’ArcGIS Server. Le niveau des messages du journal ArcGIS Server correspond à celui de l’outil Web. Pour un message d’outil Web, il existe trois niveaux (erreur, avertissement et information) qui correspondent respectivement aux niveaux Severe (Grave), Warning (Avertissement) et Info dans ArcGIS Server. Définissez manuellement les messages d’outil Web à l’aide des messages d’outil de script. De nombreux outils de géotraitement incluent également des messages prédéfinis. Pour que les messages soient consignés correctement dans ArcGIS Server, spécifiez les paramètres de journal du serveur en conséquence.

Accédez au point de terminaison Edit the service properties (Mettre à jour les propriétés du service) du service de géotraitement à modifier. En général, ce sera https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit.

Un fichier JSON simplifié affichant la propriété logGPMessages. Les autres propriétés ont été masquées pour mettre en avant la modification concernant cette propriété.

{
 "serviceName": "sample",
 "type": "GPServer",
 "other_properties": "other_values",
 "properties": {
     "other_properties": "other_values",
     "logGPMessages": true,
     "executionType": "Asynchronous"
 },
 "portalProperties": {},
 "extensions": []
}

Renvoyer des résultats dans des cas particuliers

En cas d’échec ou d’annulation d’un service de géotraitement asynchrone, ou d’un outil Web qui repose sur un service de géotraitement asynchrone, aucun résultat n’est disponible. Dans le cas où cet outil Web ou ce service de géotraitement est publié sur ArcGIS Server 11.5 ou une version ultérieure, il est toujours possible pour ArcGIS Server de renvoyer les résultats si vous y accédez via les ressources results ou result d’ArcGIS REST API. Cette fonctionnalité n’est pas disponible en cas d’utilisation d’un service de géotraitement synchrone ou d’un outil Web qui repose sur un service de géotraitement synchrone. Vous ne pouvez pas non plus accéder aux résultats dans ArcGIS Pro pour les tâches ayant échoué ou ayant été annulées.

Pour définir la propriété saveRESTResultsOnFailOrCancel, accédez au point de terminaison Edit the service properties (Mettre à jour les propriétés du service) du service de géotraitement à modifier. En général, ce sera https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit.

Un fichier JSON simplifié affichant la propriété saveRESTResultsOnFailOrCancel. Les autres propriétés ont été masquées pour mettre en avant la modification concernant cette propriété.

{
 "serviceName": "sample",
 "type": "GPServer",
 "other_properties": "other_values",
 "properties": {
     "other_properties": "other_values",
     "saveRESTResultsOnFailOrCancel": true,
     "executionType": "Asynchronous"
 },
 "portalProperties": {},
 "extensions": []
}

Bloquer certains outils

Pour la publication d’outils Web ou de services de géotraitement, il peut être nécessaire de désactiver certaines tâches ou d’en bloquer l’accès. Avec ArcGIS Server 11.5 et ses versions ultérieures, ajoutez la propriété blockedTools ou allowedTools aux propriétés du service pour bloquer des outils spécifiques.

Utilisez la propriété blockedTools pour rendre inutilisables des outils spécifiques. Utilisez la propriété allowedTools pour ne rendre utilisables que des outils spécifiques (les autres outils seront inaccessibles). Utilisez l’une ou l’autre des propriétés pour des raisons pratiques. Pour spécifier une tâche, utilisez son nom ou son nom d’affichage. Lorsque le nom d’une tâche correspond au nom d’affichage d’une autre tâche, les deux tâches sont reconnues et bloquées ou autorisées.

Accédez au point de terminaison Edit the service properties (Mettre à jour les propriétés du service) du service de géotraitement à modifier. En général, ce sera https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit.

Un fichier JSON simplifié affichant la propriété blockedTools avec plusieurs noms de tâches à bloquer. Les noms sont séparés par des points-virgules.

{
 "serviceName": "sample",
 "type": "GPServer",
 "other_properties": "other_values",
 "properties": {
     "other_properties": "other_values",
     "blockedTools": "extractData;bufferInputs",
     "executionType": "Synchronous"
 },
 "portalProperties": {},
 "extensions": []
}