Gérer des tuiles de cache de serveur de carte (Serveur)

Synthèse

Permet de créer et mettre à jour des tuiles dans un cache de couche de tuiles Web existant (dans ArcGIS Enterprise ou ArcGIS Online), des couches d’images de carte dans ArcGIS Enterprise et des services de carte ou d’imagerie mis en cache sur un serveur autonome. Cet outil permet de créer des tuiles, de remplacer des tuiles manquantes, d'actualiser des tuiles devenues obsolètes et de supprimer des tuiles.

Utilisation

  • L'exécution de cet outil peut prendre du temps pour les caches qui couvrent une grande étendue géographique ou les échelles de carte très grandes. Si l'outil est annulé, la création de tuiles est arrêtée, mais les tuiles existantes ne sont pas supprimées. Cela signifie que vous pouvez annuler l’exécution de l’outil si vous manquez de temps et le réexécuter ultérieurement dans le même cache en définissant le paramètre Mode de mise à jour sur Recréer les tuiles vides.

Paramètres

ÉtiquetteExplicationType de données
Service d'entrée

Couche de tuiles Web, couches d’imagerie Web ou couche d’images de carte dont les tuiles de cache sont à mettre à jour.

Image Service; Map Server
Échelles

Liste des niveaux d'échelle auxquels les tuiles seront créées.

Par défaut, les échelles répertoriées dans la boîte de dialogue de cet outil sont comprises entre les échelles en cache minimales et maximales pour le service. Vous ne pouvez pas modifier la plage d’échelle du cache du service dans ArcGIS Pro.

Double
Mode de mise à jour

Indique le mode à utiliser pour mettre à jour le cache.

  • Recréer les tuiles videsSeules les tuiles vides sont créées. Les tuiles existantes restent en l'état. Cette option n’est pas disponible pour les couches de tuiles Web publiées sur ArcGIS Online
  • Recréer toutes les tuilesLes tuiles existantes sont remplacées et de nouvelles tuiles sont ajoutées si l'étendue a été modifiée.
  • Supprimer des tuilesLes tuiles sont supprimées du cache. La structure du dossier de cache n'est pas supprimée.
String
Nombre d’instances de service de mise en cache
(Facultatif)

Nombre total d’instances du service System/CachingTools à dédier à l’exécution de cet outil. Si la valeur par défaut -1 est utilisée, toutes les instances d’outil de mise en cache de l’installation ArcGIS Enterprise sont utilisées. Définissez une valeur inférieure pour utiliser moins d’instances d’outil de mise en cache.

Vous pouvez augmenter la valeur du paramètre Nombre maximum d’instances par machine du service System/CachingTools dans la fenêtre Éditeur de services, disponible via une connexion de niveau administrateur à ArcGIS Server. Assurez-vous que les machines serveur peuvent prendre en charge le nombre d’instances défini.

Dans le cas d’une connexion à un serveur autonome, le nombre par défaut d’instances correspond à la valeur du paramètre Nombre maximal d’instances du service d’outil de mise en cache.

Long
Zone d’intérêt
(Facultatif)

Zone d’intérêt qui limite les emplacements où les tuiles sont créées ou supprimées. Ce paramètre est utile pour la gestion des tuiles dans le cas de zones de forme irrégulière. De plus, son utilisation est pertinente lorsque certaines zones sont mises en cache à l’avance et que les zones moins visitées non mises en cache le restent.

Si vous n’indiquez aucune valeur, le paramétrage par défaut utilise l’étendue globale de la carte.

Feature Set
Etendue de mise à jour
(Facultatif)

Étendue rectangulaire utilisée pour créer ou supprimer des tuiles, selon la valeur du paramètre Mode de mise à jour. Si des valeurs sont indiquées pour les paramètres Étendue de mise à jour et Zone d’intérêt, c’est la valeur du paramètre Zone d’intérêt qui est utilisée.

  • Current Display Extent (Étendue actuellement affichée) Vue cartographique : l’étendue repose sur la carte ou la scène active. Cette option est uniquement disponible lorsqu’une carte est active.
  • Extent of a Layer (Étendue d’une couche) Couche : l’étendue repose sur une couche de carte active. Utilisez la liste déroulante pour choisir une couche disponible ou utilisez l’option Extent of data in all layers (Étendue des données dans toutes les couches) pour obtenir l’étendue combinée de toutes les couches de carte actives, y compris le fond de carte. Cette option est uniquement disponible lorsqu’une carte avec des couches est active.
  • Browse (Parcourir) Parcourir : l’étendue repose sur un jeu de données existant.
  • Reset Extent (Réinitialiser l’étendue) Réinitialiser : la valeur par défaut de l’étendue est rétablie.
  • Manually entered coordinates (Coordonnées saisies manuellement) : les coordonnées doivent être des valeurs numériques incluses dans le système de coordonnées de la carte active.

    La carte peut utiliser des unités d’affichage différentes

Extent
Attente de la fin de la tâche
(Facultatif)

Détermine si l’exécution de l’outil se poursuit pendant que l’exécution de la tâche en cache sur ArcGIS Online ou Portal for ArcGIS.

  • Activé - L’outil continue de s’exécuter pendant que la tâche en cache est exécutée sur ArcGIS Online ou Portal for ArcGIS. À l’aide de cette option, vous pouvez demander des rapports de progression détaillés à tout moment et visualiser les messages de géotraitement dès qu’ils apparaissent. Il s’agit de l’option par défaut.
  • Désactivé - Une tâche est transmise au portail, ce qui vous permet d’effectuer d’autres tâches de géotraitement dans ArcGIS Pro ou de le fermer. Utilisez cette option lorsque vous créez un cache automatiquement au moment de la publication du service. Vous pouvez également définir cette option sur un autre cache que vous générez.
Boolean
URL du portail
(Facultatif)

URL du portail.

String

Sortie obtenue

ÉtiquetteExplicationType de données
URL de service de carte en sortie

L’URL en sortie.

String

arcpy.server.ManageMapServerCacheTiles(input_service, scales, update_mode, {num_of_caching_service_instances}, {area_of_interest}, {update_extent}, {wait_for_job_completion}, {portal_url})
NomExplicationType de données
input_service

Couche de tuiles Web, couches d’imagerie Web ou couche d’images de carte dont les tuiles de cache sont à mettre à jour.

Image Service; Map Server
scales
[scales,...]

Liste des niveaux d'échelle auxquels les tuiles seront créées.

Double
update_mode

Indique le mode à utiliser pour mettre à jour le cache.

  • RECREATE_EMPTY_TILESSeules les tuiles vides sont créées. Les tuiles existantes restent en l'état. Cette option n’est pas disponible pour les couches de tuiles Web publiées sur ArcGIS Online
  • RECREATE_ALL_TILESLes tuiles existantes sont remplacées et de nouvelles tuiles sont ajoutées si l'étendue a été modifiée.
  • DELETE_TILESLes tuiles sont supprimées du cache. La structure du dossier de cache n'est pas supprimée.
String
num_of_caching_service_instances
(Facultatif)

Nombre total d’instances du service System/CachingTools à dédier à l’exécution de cet outil. Si la valeur par défaut -1 est utilisée, toutes les instances d’outil de mise en cache de l’installation ArcGIS Enterprise sont utilisées. Définissez une valeur inférieure pour utiliser moins d’instances d’outil de mise en cache.

Vous pouvez augmenter la valeur du paramètre Nombre maximum d’instances par machine du service System/CachingTools dans la fenêtre Éditeur de services, disponible via une connexion de niveau administrateur à ArcGIS Server. Assurez-vous que les machines serveur peuvent prendre en charge le nombre d’instances défini.

Dans le cas d’une connexion à un serveur autonome, le nombre par défaut d’instances correspond à la valeur du paramètre Nombre maximal d’instances du service d’outil de mise en cache.

Long
area_of_interest
(Facultatif)

Zone d’intérêt qui limite les emplacements où les tuiles sont créées ou supprimées. Ce paramètre est utile pour la gestion des tuiles dans le cas de zones de forme irrégulière. De plus, son utilisation est pertinente lorsque certaines zones sont mises en cache à l’avance et que les zones moins visitées non mises en cache le restent.

Si vous n’indiquez aucune valeur, le paramétrage par défaut utilise l’étendue globale de la carte.

Feature Set
update_extent
(Facultatif)

Étendue rectangulaire utilisée pour créer ou supprimer des tuiles, selon la valeur du paramètre update_mode. Si des valeurs sont indiquées pour les paramètres update_extent et area_of_interest, c’est la valeur du paramètre area_of_interest qui est utilisée.

  • MAXOF : l’étendue maximale de toutes les entrées est utilisée.
  • MINOF : l’étendue minimale commune à toutes les entrées est utilisée.
  • DISPLAY : l’étendue est égale à l’affichage visible.
  • Nom de la couche : l’étendue de la couche spécifiée est utilisée.
  • Objet Extent : l’étendue de l’objet spécifié est utilisée.
  • Chaîne délimitée par des espaces de coordonnées géographiques : l’étendue de la chaîne spécifiée est utilisée. Les coordonnées sont exprimées dans l’ordre x-min, y-min, x-max, y-max.
Extent
wait_for_job_completion
(Facultatif)

Détermine si l’exécution de l’outil se poursuit pendant que l’exécution de la tâche en cache sur ArcGIS Online ou Portal for ArcGIS.

  • WAITL’outil continue de s’exécuter pendant que la tâche en cache est exécutée sur ArcGIS Online ou Portal for ArcGIS. À l’aide de cette option, vous pouvez demander des rapports de progression détaillés à tout moment et visualiser les messages de géotraitement dès qu’ils apparaissent. Il s’agit de l’option par défaut. Il est recommandé d’utiliser cette option dans les scripts Python.
  • DO_NOT_WAITUne tâche est transmise au serveur, ce qui vous permet d’effectuer d’autres tâches de géotraitement. Utilisez cette option lorsque vous créez un cache automatiquement au moment de la publication du service. Vous pouvez également définir cette option sur un autre cache que vous générez.
Boolean
portal_url
(Facultatif)

URL du portail.

String

Sortie obtenue

NomExplicationType de données
out_job_url

L’URL en sortie.

String

Exemple de code

Exemple d’utilisation de l’outil ManageMapServerCacheTiles (script autonome)

L’exemple ci-dessous montre comment recréer toutes les tuiles de cache pour un service de carte ou d’imagerie en utilisant une zone d’intérêt.

# Name: ManageMapServerCacheTiles.py
# Description: The following stand-alone script demonstrates how to Recreate all 
#               cache tiles for for a map or image service using an area of interest.
#               This tool works for weblayers published to ArcGIS Enterprise and ArcGIS Online.
#               and for map and image services on a stand alone ArcGIS Server

# Example: This sample script updates map cache tiles.

import arcpy
import os

# Sign in to portal
myPortal= "https://www.myArcGISEnterprise.com/webadaptor"
arcpy.SignInToPortal(myPortal, "MyUserName", "MyPassword")
serviceName= "MyCounty"
serviceType= "MapServer"
myPortalServiceURL = (myPortal + "/" + "rest/services" +"/" + serviceName + "/" + serviceType)


# Stand alone ArcGIS Server
target_server_connection = r"C:\Project\gisserver.ags.esri.com (publisher).ags"
serviceName= "MyCounty"
serviceType= "MapServer"
myServerServiceURL= target_server_connection + "/" + serviceName + "." + serviceType


#variables for reporting
currentTime = datetime.datetime.now()
arg1 = currentTime.strftime("%H-%M")
arg2 = currentTime.strftime("%Y-%m-%d %H:%M")
file = 'C:/data/report_%s.txt' % arg1


# List of input variables for map or image service 
scales = [500000,250000]
numOfCachingServiceInstances = 8
updateMode = "RECREATE_ALL_TILES"
areaOfInterest = "C:/data/shp/CaTxFlMaMin.shp"
waitForJobCompletion = "WAIT"
updateExtents = ""
portalURL =""

# Variables for reporting
currentTime = datetime.datetime.now()
arg1 = currentTime.strftime("%H-%M")
arg2 = currentTime.strftime("%Y-%m-%d %H:%M")
file = 'C:/data/report_%s.txt' % arg1

# Print results of the script to a report
report = open(file,'w')

try:
    result = arcpy.server.ManageMapServerCacheTiles(mytest, scales, updateMode,
                                                    numOfCachingServiceInstances, areaOfInterest,
                                                    updateExtents, waitForJobCompletion,
                                                    portalURL)
    while result.status < 4:
        time.sleep(0.2)
    resultValue = result.getMessages()
    report.write ("completed " + str(resultValue))

    print ("Created cache tiles for given schema successfully for " + serviceName )
    
except Exception as e:
    # If an error occurred, print line number and error message
    import traceback, sys
    tb = sys.exc_info()[2]
    report.write("Failed at step 1 \n" "Line %i" % tb.tb_lineno)
    report.write(e.message)
report.close()

print ("Completed update of cache tiles for " + serviceName)

Informations de licence

  • Basic: Oui
  • Standard: Oui
  • Advanced: Oui

Rubriques connexes