Cache-Status für Kartenserver verwalten (Server)
Zusammenfassung
Verwaltet interne, auf dem Server gespeicherte Daten zu den erstellten Kacheln in einer Karte oder einem Image-Service-Cache.
Verwendung
- Mit diesem Werkzeug können Cache-Statusinformationen entfernt oder neu erstellt werden. Es ist nützlich, wenn der Status des Cache geändert wurde, indem Sie Kacheln manuell hineinkopiert oder Kacheln nach Bedarf erstellt haben. Sie können mit diesem Werkzeug auch einen Status für einen Cache erstellen, der mit einer früheren Version von ArcGIS for Server erstellt wurde.
Syntax
Parameter | Erläuterung | Datentyp |
input_service | Der Karten- oder Image-Service, für den der Status geändert wird. Dies ist eine Zeichenfolge, die sowohl die Server- als auch die Service-Informationen enthält. Um zu erfahren, wie diese Zeichenfolge erstellt wird, öffnen Sie ArcCatalog, wählen Sie Ihren Service im Kataloginhaltsverzeichnis aus, und beachten Sie den Text in der Werkzeugleiste Verzeichnis. Ändern Sie dann die umgekehrten Schrägstriche in Schrägstriche, z. B. GIS Servers/arcgis on MYSERVER (admin)/USA.MapServer. | String |
scales |
Dieser Parameter wird in zukünftigen Versionen von ArcGIS verwendet. | Double |
manage_mode |
| String |
num_of_caching_service_instances |
Die Gesamtzahl der Instanzen des Service "System/CachingTools", die Sie zum Ausführen dieses Werkzeugs reservieren möchten. Sie können die Maximale Anzahl von Instanzen pro Computer des Service "System/CachingTools" mithilfe des Fensters Service-Editor erhöhen, das über eine administrative Verbindung zu ArcGIS-Server verfügbar ist. Stellen Sie sicher, dass die Servercomputer die ausgewählte Anzahl von Instanzen unterstützen können. | Long |
report_folder |
Dieser Parameter wird in zukünftigen Versionen von ArcGIS verwendet. | Folder |
report_extent (optional) |
Dieser Parameter wird in zukünftigen Versionen von ArcGIS verwendet. | Extent |
area_of_interest (optional) |
Dieser Parameter wird in zukünftigen Versionen von ArcGIS verwendet. | Feature Set |
Codebeispiel
Cache-Status für Kartenserver verwalten - Beispiel
Löscht die Statusinformationen für einen Cache.
# Name: ManageMapServerCacheStatus.py
# Description: The following stand-alone script demonstrates how to delete
# Status of cache using ManageMapServerCachStatus tool
# Requirements: os, sys, time and 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 input variables for map service properties
connectionFile = r"C:\Users\<username>\AppData\Roaming\ESRI\Desktop10.1\ArcCatalog"
server = "arcgis on MyServer_6080 (publisher)"
serviceName = "Rainfall.MapService"
inputService = connectionFile + "\\" + server + "\\" + serviceName
scales = ""
manageMode = "DELETE_CACHE_STATUS"
numOfCachingServiceInstances = "2"
outputFolder = ""
areaOfInterest = ""
reportExtents = ""
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')
# use "scales[0]","scales[-1]","scales[0:3]"
try:
starttime = time.clock()
result = arcpy.ManageMapServerCacheStatus_server(inputService, scales[-1],
manageMode,
numOfCachingServiceInstances,
outputFolder,
areaOfInterest,
reportExtents)
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 "Reported the Bundle status for scale =" + str(scales[-1]) + "of "
serviceName + "at " + outputFolder + "\n using specified feature class "
areaOfInterest + " 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 step 3 \n" "Line %i" % tb.tb_lineno)
report.write(e.message)
report.close()