Czy można programowo zatrzymać i uruchomić usługi map ArcGIS Server przy użyciu Pythona?
python
arcgis-server
Jeff Berry
źródło
źródło
.ags
pliku na token. Możesz spróbować połączyć się z certyfikatem (plik PEM), choć wymaga to więcej niż zwykłego waniliowego HTTP.Odpowiedzi:
W ArcGIS 10.0 w przypadku poszczególnych usług, takich jak wiersz poleceń w celu utrzymania ArcIMS, istnieje narzędzie wiersza polecenia, które można pobrać z Galerii kodów ( AGSSOM ), które zapewnia rdzeń głównych obszarów, ale nie ma szczegółowego „specyficznego dla usługi” 'kontrola poziomu, której możesz teraz użyć do uruchomienia / zatrzymania / odświeżenia / dodania / usunięcia usług AGS.
W witrynie ideas.arcgis.com jest kilka miejsc z prośbami o poprawę kontroli usług z bardziej automatycznej lokalizacji.
źródło
Dla tych, którzy używają ArcGIS 10.0 i są zainteresowani użyciem AGSSOM zgodnie z zaleceniami DE Wrighta, przygotowałem następujący kod. Spowoduje to zatrzymanie wszystkich usług, umożliwiając wykonanie niezbędnych zadań w geobazie, a następnie zrestartowanie wcześniej uruchomionych usług.
źródło
Począwszy od ArcGIS Server 10.3, kilka narzędzi wiersza poleceń opartych na Pythonie jest dostarczanych wraz z serwerem ArcGIS.
Dokumenty według esri są zwykle instalowane tutaj:
C:\Program Files\ArcGIS\Server\tools\admin
Narzędzie do zarządzania usługami doskonale nadaje się do uruchamiania, zatrzymywania lub usuwania usług:
python manageservice.py -u admin -p admin -s http://gisserver.domain.com:6080 -n Beirut/Parcels -o start
źródło
W tym samym duchu, co napisał Jeff Berry w swojej odpowiedzi, napisałem małą funkcję, która będzie zarządzać usługami mapowymi ArcGIS Server 10.0 za pomocą narzędzi AGSSOM.
W moim przypadku dzwonię do usług indywidualnie według nazwiska, zatrzymując się i uruchamiając pojedynczo.
Następnie możesz wywołać usługę według nazwy, używając opcji -x, aby zatrzymać i -s, aby uruchomić:
źródło
W przypadku ArcGIS 10.7 i niektórych wcześniejszych wersji pełny zestaw skryptów Pythona do zatrzymywania, uruchamiania, usuwania i kilka innych rzeczy można znaleźć tutaj: http://www.arcgis.com/home/item.html?id= 12dde73e0e784e47818162b4d41ee340 (wewnątrz tego pliku znajduje się również plik .exe, jeśli absolutnie potrzebujesz pełnego pliku wykonywalnego)
Lub zagłęb się w pomoc i przeczytaj o wielu opcjach (z linii poleceń, API Pythona, fragmentów kodu) tutaj: https://enterprise.arcgis.com/en/server/latest/administer/linux/scripting-arcgis -server-Administration.htm
Jednak wszystkie te punkty są uwzględnione jako inne odpowiedzi w pytaniu, do którego się odwołałeś. AGSSOM to narzędzie .net napisane dla serwera 10.0 i starszych. Powstała wersja 10.1 i nowsza, ale nigdy nie zyskała popularności, ponieważ nie był potrzebny ciężki kod c # / vb do połączenia z serwerem. Serwer 10.1+ został wydany z dobrze ustrukturyzowanym interfejsem API REST, pozwalającym na języki wysokiego poziomu, takie jak Python, a tym samym szerszą publiczność na pisanie skryptów i administrowanie nim bez potrzeby użycia ciężkiego narzędzia agssom.exe.
źródło
W ArcGIS for Server 10.1+ można korzystać z ArcGIS Server Administration Toolkit - 10.1+
Z opisu (pogrubienie jest moje):
źródło