Apakah mungkin untuk menghentikan dan memulai secara terprogram layanan peta Server ArcGIS menggunakan Python?
python
arcgis-server
Jeff Berry
sumber
sumber
.ags
file menjadi token. Anda mungkin dapat mencoba menghubungkan dengan sertifikat (file PEM), meskipun ini membutuhkan lebih dari HTTP vanilla biasa.Jawaban:
Di ArcGIS 10.0, untuk layanan individual, seperti Anda dapat command-line untuk mempertahankan ArcIMS, ada alat commandline yang dapat Anda unduh dari Galeri Kode ( AGSSOM ) yang memberi Anda inti dari area utama tetapi tidak ada layanan khusus untuk granular Kontrol level yang dapat Anda gunakan saat ini untuk Memulai / Berhenti / Refresh / Tambah / Hapus layanan AGS.
Ada di ideas.arcgis.com beberapa tempat dengan permintaan untuk meningkatkan kontrol layanan dari lokasi yang lebih otomatis.
sumber
Bagi mereka yang menggunakan ArcGIS 10.0, dan tertarik menggunakan AGSSOM seperti yang direkomendasikan oleh DE Wright, saya telah mengumpulkan kode berikut. Ini akan menghentikan semua layanan yang memungkinkan Anda untuk melakukan tugas geodatabase yang diperlukan, dan kemudian memulai kembali layanan yang berjalan sebelumnya.
sumber
Pada ArcGIS Server 10.3, beberapa utilitas baris perintah berbasis Python dibundel dengan server ArcGIS.
Dokumentasi per esri biasanya dipasang di sini:
C:\Program Files\ArcGIS\Server\tools\admin
The mengelola layanan utilitas sangat bagus untuk memulai, menghentikan atau menghapus layanan:
python manageservice.py -u admin -p admin -s http://gisserver.domain.com:6080 -n Beirut/Parcels -o start
sumber
Dalam nada yang sama dengan apa yang diposting Jeff Berry dalam jawabannya, saya menulis sebuah fungsi kecil yang akan mengelola layanan peta ArcGIS Server 10.0 menggunakan alat AGSSOM.
Dalam kasus saya, saya memanggil layanan satu per satu dengan nama, berhenti dan mulai satu per satu.
Kemudian, Anda dapat memanggil layanan dengan nama menggunakan -x untuk berhenti dan -s untuk memulai:
sumber
Untuk ArcGIS 10.7, dan beberapa versi sebelumnya, satu set lengkap skrip python untuk berhenti, memulai, menghapus, dan banyak hal lainnya dapat ditemukan di sini: http://www.arcgis.com/home/item.html?id= 12dde73e0e784e47818162b4d41ee340 (ada juga .exe di dalam ini jika Anda benar-benar membutuhkan eksekusi penuh)
Atau selami bantuan ini dan baca tentang banyak opsi (di luar kotak perintah, api python, cuplikan kode) di sini: https://enterprise.arcgis.com/en/server/latest/administer/linux/scripting-arcgis -server-administration.htm
Namun, semua poin ini dimasukkan sebagai jawaban lain dalam pertanyaan yang Anda referensikan. AGSSOM adalah utilitas .net yang ditulis untuk Server 10.0 dan lebih lama. Ada versi 10.1 dan yang lebih baru yang diproduksi, tetapi tidak pernah mendapatkan popularitas karena Anda tidak perlu kode c # / vb yang berat untuk berinteraksi dengan server. Server 10.1+ dirilis dengan REST API terstruktur dengan baik, memungkinkan bahasa tingkat tinggi, seperti Python, dan dengan demikian audiens yang lebih luas untuk skrip dan mengelola tanpa memerlukan utilitas agssom.exe yang berat .
sumber
Di ArcGIS untuk Server 10.1+ Anda dapat menggunakan Perangkat Administrasi Server ArcGIS - 10.1+
Dari deskripsi (huruf tebal adalah milikku):
sumber