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

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

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

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

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

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

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

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

Параметры

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

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

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

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

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

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

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

Long

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

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

File
out_service_definition

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

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

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

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

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.StageService_server(sddraft_output_filename, sd_output_filename)

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

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

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

import arcpy

try:
    arcpy.StageService_server(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: Да

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