Можно ли программно останавливать и запускать картографические сервисы ArcGIS Server с помощью Python?
python
arcgis-server
Джефф Берри
источник
источник
.ags
файла в токен. Вы можете попытаться подключиться с помощью сертификата (файла PEM), хотя для этого требуется нечто большее, чем простой ванильный HTTP.Ответы:
В ArcGIS 10.0 для отдельных сервисов, таких как командная строка для поддержки ArcIMS, есть инструмент командной строки, который вы можете загрузить из галереи кодов ( AGSSOM ), который дает вам ядро основных областей, но нет детального «специфичного для сервиса» 'контроль уровня, который вы можете использовать в данный момент для запуска / остановки / обновления / добавления / удаления сервисов AGS.
На ideas.arcgis.com есть несколько мест с просьбами улучшить управление услугами из более автоматизированного местоположения.
источник
Для тех, кто использует ArcGIS 10.0 и заинтересован в использовании AGSSOM в соответствии с рекомендациями DE Wright, я собрал следующий код. Это остановит все службы, позволяющие вам выполнить необходимые задачи базы геоданных, а затем перезапустит ранее запущенные службы.
источник
Начиная с ArcGIS Server 10.3, несколько утилит командной строки на основе Python поставляются в комплекте с ArcGIS server.
В соответствии с документацией Esri они обычно устанавливаются здесь:
C:\Program Files\ArcGIS\Server\tools\admin
Управления коммунальных услуг отлично подходит для запуска, остановки или удаления услуги:
python manageservice.py -u admin -p admin -s http://gisserver.domain.com:6080 -n Beirut/Parcels -o start
источник
В том же духе, что и в своем ответе Джефф Берри, я написал небольшую функцию, которая будет управлять картографическими сервисами ArcGIS Server 10.0 с помощью инструментов AGSSOM.
В моем случае я звоню в сервис по отдельности по имени, останавливая и запуская по одному.
Затем вы можете вызвать службу по имени, используя -x для остановки и -s для запуска:
источник
Для ArcGIS 10.7 и некоторых более ранних версий полный набор скриптов Python для остановки, запуска, удаления и множество других вещей можно найти здесь: http://www.arcgis.com/home/item.html?id= 12dde73e0e784e47818162b4d41ee340 (в нем также есть .exe, если вам абсолютно необходим полный исполняемый файл)
Или погрузитесь в справку и прочитайте о многих параметрах (из командной строки, Python API, фрагменты кода) здесь: https://enterprise.arcgis.com/en/server/latest/administer/linux/scripting-arcgis -server-administration.htm
Однако все эти пункты включены в качестве других ответов в вопросе, на который вы ссылались. AGSSOM - это утилита .net, написанная для сервера 10.0 и старше. Была выпущена версия 10.1 и новее, но она так и не завоевала популярность, поскольку вам не требовался тяжелый код на c # / vb для взаимодействия с сервером. Сервер 10.1+ был выпущен с хорошо структурированным REST API, позволяющим использовать языки высокого уровня, такие как Python, и, таким образом, более широкой аудитории для его написания и администрирования без необходимости использования тяжелой утилиты agssom.exe.
источник
В ArcGIS for Server 10.1+ вы можете использовать ArcGIS Server Administration Toolkit - 10.1+
Из описания (смелость моя):
источник