Résumé
Permet de supprimer un cache de service d'imagerie ou de carte, ainsi que tous les fichiers associés sur le disque.
Utilisation
Cette opération n'étant pas récupérable, utilisez-la uniquement si vous êtes certain de ne plus avoir besoin du cache. Si vous souhaitez supprimer des tuiles mais conserver la structure du dossier de cache et la structure de tuile, utilisez l’outil Gérer des tuiles de cache de serveur de carte avec le Mode de mise à jour défini sur DELETE_TILES.
Après l'exécution de cet outil, le service redémarre.
Syntaxe
arcpy.server.DeleteMapServerCache(input_service, {num_of_caching_service_instances})
Paramètre | Explication | Type de données |
input_service | Service de carte ou d'imagerie dont le cache sera supprimé. Cette chaîne contient les informations relatives au serveur et au service. Pour savoir comment construire cette chaîne, ouvrez ArcCatalog, sélectionnez le service dans l’arborescence du catalogue et notez le texte dans la barre d’outils Emplacement. Remplacez les barres obliques inverses par des barres obliques, comme suit : GIS Servers/arcgis on MYSERVER (admin)/USA.MapServer. | Image Service; Map Server |
num_of_caching_service_instances (Facultatif) | Nombre total d'instances du service System/CachingTools qui seront utilisées pour exécuter cet outil. Vous pouvez augmenter le paramètre Nombre maximum d'instances par machine du service System/CachingTools dans la fenêtre Éditeur de services disponible via une connexion administrateur à ArcGIS Server. Assurez-vous que vos machines serveur peuvent prendre en charge le nombre d'instances sélectionné. L'outil Supprime le cache du serveur de carte nécessite au moins deux instances pour fonctionner correctement. | Long |
Sortie dérivée
Nom | Explication | Type de données |
out_job_url | L’URL en sortie. | String |
Exemple de code
Exemple d'utilisation de l'outil DeleteMapServerCache (script autonome)
Cet exemple utilise DeleteMapServerCache pour supprimer le cache d’un service de carte nommé Rainfall.
# Name: DeleteMapServerCache.py
# Description: The following stand-alone script demonstrates how to delete map server cache
# tiles if the corresponding cache schema or tiles has been created
# Requirements: os, sys, time & traceback modules
# Any line that begins with a pound sign is a comment and will not be executed
# Empty quotes take the default value.
# To accept arguments from the command line replace values of variables to
# "sys.argv[]"
# Import system modules
import arcpy
from arcpy import env
import os, sys, time, datetime, traceback, string
# Set environment settings
env.workspace = "C:/data"
# List of variables for mapservice properties
connectionFile = r"C:\Users\<username>\AppData\Roaming\ESRI\Desktop10.1\ArcCatalog"
server = "arcgis on MyServer_6080 (publisher)"
serviceName = "Rainfall.MapServer"
inputService = connectionFile + "\\" + server + "\\" + serviceName
numOfCachingServiceInstances = 2
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')
# To Recreate all the tiles for the default number of scales generated
try:
starttime = time.clock()
result = arcpy.DeleteMapServerCache_server(inputService,
numOfCachingServiceInstances)
finishtime = time.clock()
elapsedtime = finishtime - starttime
#print messages to a file
while result.status < 4:
time.sleep(0.2)
resultValue = result.getMessages()
report.write ("completed " + str(resultValue))
print "Deleted cache tiles & schema for mapservice " + serviceName
"\n in " + str(elapsedtime) + " sec \n on " + arg2
except Exception, e:
# If an error occurred, print line number and error message
tb = sys.exc_info()[2]
report.write("Failed at \n" "Line %i" % tb.tb_lineno)
report.write(e.message)
print "Deleted Map server Cache Tiles "
report.close()
Environnements
Cet outil n'utilise pas d’environnement de géotraitement.
Informations de licence
- Basic: Oui
- Standard: Oui
- Advanced: Oui