Организовать сервис (Сервер)

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

Указание определения сервиса. Создаваемый файл определения сервиса (.sd) содержит всю необходимую информацию, которая нужна для публикации веб-слоя, локатора, веб-инструмента или сервиса.

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

  • Этот инструмент преобразует файл черновика определения сервиса (.sddraft) в определение сервиса, которое можно использовать в инструменте Загрузить определение сервиса при загрузке и публикации веб-слоя, веб-инструмента или сервиса на ArcGIS Online, ArcGIS Enterprise или ArcGIS Server. Черновик определений сервиса не может напрямую использоваться для публикации веб-слоя, веб-инструмента или сервиса.

  • Данный инструмент анализирует файлы .sddraft для определения потенциальных проблем с производительностью перед преобразованием файла .sddraft в файл .sd. Во время работы инструмента можно навести курсор на индикатор выполнения, чтобы отобразить всплывающее окно, содержащее полную информацию об инструменте, включая сообщения анализатора. Можно также щелкнуть Просмотр подробной информации, чтобы увидеть ту же информацию в открепленном окне, или щелкнуть Открыть историю, чтобы открыть историю геообработки проекта. Когда инструмент завершает свою работу, индикатор выполнения отображает сообщение и значок статуса выполнения инструмента. Более подробную информацию о просмотре сообщений в инструментах геообработки см. в разделе Использование инструментов геообработки.

  • При анализе файла .sddraft можно увидеть два типа сообщений: ошибки и предупреждения. Перед созданием файла .sd необходимо устранить ошибки анализатора. Предупреждения анализатора идентифицируют проблемы, связанные с производительностью, внешним видом и доступом к данным, но не препятствуют преобразованию файла .sddraft в файл .sd. Для каждого сообщения анализатора есть связанный с ним раздел справки. Дополнительные сведения об устранении этих неполадок см. в разделе Анализ ГИС-ресурса.

  • Черновики определения сервиса можно создавать с помощью модуля arcpy.sharing или функций CreateGeocodeSDDraft, CreateGPSDDraft и CreateImageSDDraft ArcPy.

Параметры

ПодписьОписаниеТип данных
Черновик определения сервиса

Входной черновик определения сервиса. Черновики определения сервиса можно создавать с помощью модуля arcpy.sharing или функций CreateGeocodeSDDraft, CreateGPSDDraft или CreateImageSDDraft ArcPy.

File
Определение сервиса

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

File
Промежуточная версия
(Дополнительный)

Версия опубликованного определения сервиса.

Если публикуется векторный слой, слой листов или слой изображений в ArcGIS Enterprise, используйте значение 5. Если публикуется слой изображений карты или веб-инструмент в ArcGIS Enterprise и любой из типов слоев в ArcGIS Online, используйте 102. Это значение по умолчанию

При публикации веб-инструментов или сервисов геообработки на сервере 10.9.1 или более ранней его версии с помощью функции CreateGPSDDraft ArcPy используйте значение, соответствующее номеру версии из следующего списка:

  • 10.9.1—209
  • 10.9—208
  • 10.8.1—206
  • 10.8—205
  • 10.7.1—204
  • 10.7—203
  • 10.6.1—202
  • 10.6—201
  • 10.5.1—200
Long

arcpy.server.StageService(in_service_definition_draft, out_service_definition, {staging_version})
ИмяОписаниеТип данных
in_service_definition_draft

Входной черновик определения сервиса. Черновики определения сервиса можно создавать с помощью модуля arcpy.sharing или функций CreateGeocodeSDDraft, CreateGPSDDraft или CreateImageSDDraft ArcPy.

File
out_service_definition

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

File
staging_version
(Дополнительный)

Версия опубликованного определения сервиса.

Если публикуется векторный слой, слой листов или слой изображений в ArcGIS Enterprise, используйте значение 5. Если публикуется слой изображений карты или веб-инструмент в ArcGIS Enterprise и любой из типов слоев в ArcGIS Online, используйте 102. Это значение по умолчанию

При публикации веб-инструментов или сервисов геообработки на сервере 10.9.1 или более ранней его версии с помощью функции CreateGPSDDraft ArcPy используйте значение, соответствующее номеру версии из следующего списка:

  • 10.9.1—209
  • 10.9—208
  • 10.8.1—206
  • 10.8—205
  • 10.7.1—204
  • 10.7—203
  • 10.6.1—202
  • 10.6—201
  • 10.5.1—200
Long

Пример кода

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

Следующий скрипт публикует список слоев карты как веб-слой листов в ArcGIS Enterprise или ArcGIS Online. Информацию о портале можно получить на странице Порталы в ArcGIS Pro.

import arcpy
import os

# Set output file names
outdir = r"C:\Project\Output"
service = "TileSharingDraftExample"
sddraft_filename = service + ".sddraft"
sddraft_output_filename = os.path.join(outdir, sddraft_filename)

# Reference map to publish
aprx = arcpy.mp.ArcGISProject(r"C:\Project\World.aprx")
m = aprx.listMaps("World")[0]
lyrs = []
lyrs.append(m.listLayers('cities')[0])
lyrs.append(m.listLayers('counties')[0])

# Create TileSharingDraft and set service properties
sharing_draft = m.getWebLayerSharingDraft("HOSTING_SERVER", "TILE", service, lyrs)
sharing_draft.summary = "My Summary"
sharing_draft.tags = "My Tags"
sharing_draft.description = "My Description"
sharing_draft.credits = "My Credits"
sharing_draft.useLimitations = "My Use Limitations"

# Create Service Definition Draft file
sharing_draft.exportToSDDraft(sddraft_output_filename)

# Stage Service
sd_filename = service + ".sd"
sd_output_filename = os.path.join(outdir, sd_filename)
arcpy.server.StageService(sddraft_output_filename, sd_output_filename)

# Share to portal
print("Uploading Service Definition...")
arcpy.server.UploadServiceDefinition(sd_output_filename, "My Hosted Services")

print("Successfully Uploaded service.")
StageService, пример 2 (автономный скрипт)

Следующий скрипт запускает существующий черновик определения сервиса и отображает предупреждения и ошибки анализатора.

import arcpy

try:
    arcpy.server.StageService(r"C:\Data\World.sddraft", r"C:\Data\World.sd")
    warnings = arcpy.GetMessages(1)
    print(warnings)

except Exception as stage_exception:
    print("Sddraft not staged. Analyzer errors encountered - {}".format(str(stage_exception)))

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

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

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