Управление листами кэша картографического сервера (Сервер)

Краткая информация

Создает и обновляет листы в существующем кэше веб-слоя листов (в ArcGIS Enterprise или ArcGIS Online), слоев изображений карты в ArcGIS Enterprise и кэшированных картографических сервисах или сервисах изображений в автономном сервере. Этот инструмент используется для создания новых листов, замены отсутствующих листов, перезаписи устаревших листов и удаления листов.

Использование

  • Этому инструменту может потребоваться много времени на запуск для кэшей, охватывающих большой географический экстент или очень крупные масштабы карты. Если этот инструмент будет отменен, создание листов остановится, но существующие листы не удалятся. Это означает, что можно отменить этот инструмент, если не хватает времени, и снова запустить его позже на том же кэше, задав параметр Режим обновления как Заново создать пустые листы.

Параметры

ПодписьОписаниеТип данных
Входной сервис

Веб-слой листов, слой изображений веб-карты или слой изображения карты, листы кэша которого нужно обновить.

Image Service; Map Server
Масштабы

Список уровней масштабов, в которых будут созданы листы.

По умолчанию, масштабы, перечисленные в диалоговом окне инструмента, находятся между минимальным и максимальным масштабами кэша для сервиса. Нельзя изменить диапазон масштабов кэша сервиса в ArcGIS Pro.

Double
Режим обновления

Определяет режим, который будет использован при обновлении кэша.

  • Заново создать пустые листыВ этом случае создаются только пустые листы. Существующие листы останутся неизменными. Эта опция недоступна для веб-слоев листов, опубликованных в ArcGIS Online ArcGIS Online.
  • Повторно создать все листыСуществующие листы будут заменены, а новые листы добавлены, если экстент изменился.
  • Удалить листыЛисты будут удалены из кэша. Структура папки кэша не будет удалена.
String
Число экземпляров кэшированного сервиса
(Дополнительный)

Общее количество экземпляров сервиса System/CachingTools, которое будет выделено для работы этого инструмента. Если применено значение по умолчанию -1, будут использованы все экземпляры инструмента кэширования установки ArcGIS Enterprise. Указать меньшее значение, чтобы использовать меньше экземпляров инструмента кэширования.

Вы можете увеличить параметр Максимальное число экземпляров на компьютер для сервиса System/CachingTools в окне Редактор сервисов, которое доступно через административное подключение к ArcGIS Server. Убедитесь, что эти компьютеры сервера смогут поддерживать выбранное количество экземпляров.

При подключении к автономному серверу, число экземпляров по умолчанию равно значению, заданному для параметра Максимальное число экземпляров сервиса инструмента кэширования.

Long
Область интереса
(Дополнительный)

Область интереса, содержащая листы, которые будут созданы или удалены. Этот параметр полезен, если вы хотите управлять листами для областей неправильной формы. Он также применяется, если выполняется предварительное кэширование каких-то районов, а менее посещаемые области остаются некэшированными.

Если не указать значение этого параметра, по умолчанию используется полный экстент карты.

Feature Set
Экстент обновления
(Дополнительный)

Прямоугольный экстент, используемый для создания или удаления листов, в зависимости от значения параметра Режим обновления. Если указаны и Экстент обновления, и Область интересов, будет использовано значение параметра Область интересов.

  • Текущий экстент отображения Вид карты - экстент будет основан на активной карте или сцене.
  • Нарисовать экстент Закончить прямым углом - экстент будет основан прямоугольнике, нарисованном на карте или сцене.
  • Экстент слоя Слой - экстент будет основан на активном слое карты. Выберите доступный слой или воспользуйтесь опцией Экстент данных во всех слоях. У каждого слоя карте есть следующие опции:

    • Все объекты Выбрать все - экстент всех объектов.
    • Выбранные объекты Область из выбранных объектов - экстент выбранных объектов.
    • Отображаемые объекты Extent Indicator - экстент отображаемых объектов.

  • Обзор Обзор - экстент будет основан на наборе данных.
  • Буфер обмена Вставить - экстент может быть скопирован в буфер обмена и из него.
    • Копировать экстент Копировать - копирует экстент и систему координат в буфер обмена.
    • Вставить экстент Вставить - вставляет экстент и систему координат из буфера обмена. Если буфер обмена не содержат систему координат, экстент будет использовать систему координат карты.
  • Сбросить экстент Сбросить - экстент будет сброшен до значения по умолчанию.

Если координаты заданы вручную, они должны быть числовыми значениями в системе координат активной карты. На карте могут использоваться единицы отображения, отличные от введенных координат. Используйте знак отрицательного значения для координат юга и запада.

Extent
Дождитесь завершения задания
(Дополнительный)

Определяет, будет ли инструмент продолжать работать, если задание кэширования выполняется в ArcGIS Online или Portal for ArcGIS.

  • Отмечено - инструмент будет продолжать работать, если задание кэширования выполняется в ArcGIS Online или Portal for ArcGIS. С помощью этой опции вы можете запросить подробные отчеты о ходе процесса в любое время и просматривать сообщения геообработки по мере их появления. Это значение по умолчанию
  • Не отмечено – задание будет отправлено на портал, позволяя вам запускать другие задачи геообработки в ArcGIS Pro или закрыть его. Эта опция используется, если вы хотите построить кэш автоматически в момент публикации сервиса. Вы также можете установить эту опцию на любом другом создаваемом кэше.
Boolean
URL портала
(Дополнительный)

URL портала

String

Производные выходные данные

ПодписьОписаниеТип данных
URL-адрес выходного картографического сервиса

Выходной URL-адрес.

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})
ИмяОписаниеТип данных
input_service

Веб-слой листов, слой изображений веб-карты или слой изображения карты, листы кэша которого нужно обновить.

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

Список уровней масштабов, в которых будут созданы листы.

Double
update_mode

Определяет режим, который будет использован при обновлении кэша.

  • RECREATE_EMPTY_TILESВ этом случае создаются только пустые листы. Существующие листы останутся неизменными. Эта опция недоступна для веб-слоев листов, опубликованных в ArcGIS Online ArcGIS Online.
  • RECREATE_ALL_TILESСуществующие листы будут заменены, а новые листы добавлены, если экстент изменился.
  • DELETE_TILESЛисты будут удалены из кэша. Структура папки кэша не будет удалена.
String
num_of_caching_service_instances
(Дополнительный)

Общее количество экземпляров сервиса System/CachingTools, которое будет выделено для работы этого инструмента. Если применено значение по умолчанию -1, будут использованы все экземпляры инструмента кэширования установки ArcGIS Enterprise. Указать меньшее значение, чтобы использовать меньше экземпляров инструмента кэширования.

Вы можете увеличить параметр Максимальное число экземпляров на компьютер для сервиса System/CachingTools в окне Редактор сервисов, которое доступно через административное подключение к ArcGIS Server. Убедитесь, что эти компьютеры сервера смогут поддерживать выбранное количество экземпляров.

При подключении к автономному серверу, число экземпляров по умолчанию равно значению, заданному для параметра Максимальное число экземпляров сервиса инструмента кэширования.

Long
area_of_interest
(Дополнительный)

Область интереса, содержащая листы, которые будут созданы или удалены. Этот параметр полезен, если вы хотите управлять листами для областей неправильной формы. Он также применяется, если выполняется предварительное кэширование каких-то районов, а менее посещаемые области остаются некэшированными.

Если не указать значение этого параметра, по умолчанию используется полный экстент карты.

Feature Set
update_extent
(Дополнительный)

Прямоугольный экстент, используемый для создания или удаления листов, в зависимости от значения параметра update_mode. Если указаны и update_extent, и area_of_interest, будет использовано значение параметра area_of_interest.

  • MAXOF – Будет использоваться максимальный экстент всех входных данных.
  • MINOF – Будет использоваться минимальная область, которая является общей для всех входных данных.
  • DISPLAY — Экстент равен видимому отображению.
  • Имя слоя - будет использоваться тот же экстент, что и в указанном слое.
  • Объект Extent — будет использоваться экстент указанного объекта.
  • Строка координат, разделенных пробелами – будет использоваться экстент из заданной строки. Координаты должны быть выражены в таком порядке: x-min, y-min, x-max, y-max.
Extent
wait_for_job_completion
(Дополнительный)

Определяет, будет ли инструмент продолжать работать, если задание кэширования выполняется в ArcGIS Online или Portal for ArcGIS.

  • WAITОтмечено - инструмент продолжать работать, если задание кэширования выполняется в ArcGIS Online или Portal for ArcGIS. С помощью этой опции вы можете запросить подробные отчеты о ходе процесса в любое время и просматривать сообщения геообработки по мере их появления. Это значение по умолчанию Рекомендуется использовать эту опцию в скриптах Python.
  • DO_NOT_WAITЗадание будет отправлено на сервер, позволяя вам запускать другие задачи геообработки. Эта опция используется, если вы хотите построить кэш автоматически в момент публикации сервиса. Вы также можете установить эту опцию на любом другом создаваемом кэше.
Boolean
portal_url
(Дополнительный)

URL портала

String

Производные выходные данные

ИмяОписаниеТип данных
out_job_url

Выходной URL-адрес.

String

Пример кода

ManageMapServerCacheTiles, пример (автономный скрипт)

В примере показано, как перестроить весь кэш листов для картографического сервиса или сервиса изображений в области интереса.

# 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
from arcpy import env
import os, sys, time, datetime, traceback, string
import traceback, sys

# Set environment settings
env.workspace = "C:/data"

# Sign in to ArcGIS Enterprise
myPortal= "https://MyPortal.domain.com/portalwebadaptor"
arcpy.SignInToPortal(myPortal, "siteadminValue", "siteadminPassword")
myServer="https://Myserver.domain.com/serverwebadaptor"
serviceName= "SampleWorldCities"
serviceType= "MapServer"
myPortalServiceURL = (myServer + "/" + "rest/services" +"/" + serviceName + "/"
                      + serviceType)

### Sign in to ArcGIS Online
##myPortal= "https://www.arcgis.com"
##arcpy.SignInToPortal(myPortal, "MyUserName", "MyPassword")
##serviceRestUrl="https://www.arcgis.com/tiles/orgid"
##serviceName= "MyServiceName"
##serviceType= "MapServer"
##myPortalServiceURL = (serviceRestUrl + "/" + "arcgis/rest/services" +"/" + serviceName + "/"
##                      + serviceType)


# Stand alone ArcGIS Server
##target_server_connection = r"C:\share\python3\arcgis on MyServer.ags"
##serviceName= "MyServiceName"
##serviceType= ".MapServer"
##myPortalServiceURL = (target_server_connection +  "\\" + serviceName + serviceType)

print (myPortalServiceURL)

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


# List of input variables for map or image service 
##scales = [591657527.591555,295828763.79577702,147914381.89788899]
scales = [73957190.948944,36978595.474472]
numOfCachingServiceInstances = 8
updateMode = "RECREATE_ALL_TILES"
areaOfInterest = ""
waitForJobCompletion = "WAIT"
updateExtents = ""
portalURL =""


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

try:
    result = arcpy.server.ManageMapServerCacheTiles(myPortalServiceURL, 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(str(e))
report.close()

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

Информация о лицензиях

  • Basic: Да
  • Standard: Да
  • Advanced: Да

Связанные разделы