{"id":29886104,"url":"https://github.com/pauldzy/dz_ags_audit","last_synced_at":"2025-10-12T05:35:01.937Z","repository":{"id":87325456,"uuid":"50569000","full_name":"pauldzy/dz_ags_audit","owner":"pauldzy","description":"Script to dump the service attributes of ArcGIS Server for comparison or auditing purposes","archived":false,"fork":false,"pushed_at":"2016-02-17T00:56:37.000Z","size":19,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-07-31T18:32:53.467Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pauldzy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-01-28T08:42:30.000Z","updated_at":"2016-02-14T15:22:58.000Z","dependencies_parsed_at":"2023-05-03T04:00:41.208Z","dependency_job_id":null,"html_url":"https://github.com/pauldzy/dz_ags_audit","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pauldzy/dz_ags_audit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pauldzy%2Fdz_ags_audit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pauldzy%2Fdz_ags_audit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pauldzy%2Fdz_ags_audit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pauldzy%2Fdz_ags_audit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pauldzy","download_url":"https://codeload.github.com/pauldzy/dz_ags_audit/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pauldzy%2Fdz_ags_audit/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271665212,"owners_count":24799304,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-22T02:00:08.480Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-07-31T16:23:09.689Z","updated_at":"2025-10-12T05:35:01.840Z","avatar_url":"https://github.com/pauldzy.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# dz_ags_audit\nScript to dump the service attributes of ArcGIS Server for comparison or auditing purposes.\n\nAs far as I know at the moment (10.3.1) there is no simple way to dump into textual format the service configuration of a given ArcGIS Server.  Why exactly we cannot dump all services and/or critical machine details (such as data stores) to XML or some other text format seems like an oversight to me.\n\nWhile one administrator having iron-fisted and eagle-eyed control over all AGS servers is ideal, in some development environments various actors with publishing and admin rights may during the course of development or sprints change aspects of services - perhaps to the detriment of others dependent on previous settings.  Oftentimes it may be something as innocent as redeploying a service and failing to enable a WMS for example, other times its could be a bit more nefarious with dev groups making changes to suit their application and thus hosing others.  The point is the poor sap in charge of the server may find this difficult to keep track of and arbitrate.  I felt there was a need to **easily** and **quickly** manually or in automated fashion audit and document the state of a server at any one time. \n\nThe results can then be diffed with previous results to detect changes on a single server or diffed against staging or production to detect new deployments or incompatibilities hidden in services.  For example perhaps the production version of the service has dynamic layers set but the staging service does not.  You want to catch that before the service description file is used to update production.\n\n#### Existing Code\nThe script in its current stage was banged out rather quickly in 2015 to support a third-party virtualization of my then AGS infrastructure.  I did not spend much time on the output format itself as sorting out the REST calls was work enough.  Ideally the text output of the script and the clunky sysout logging should be replaced perhaps with XML or something else more usable.  However it is functional and a good starting point for anyone interested in creating something more robust.\n\n#### Usage\n* Username or parameter 1: AGS or Portal user with administrative rights on the AGS.\n* Passsword or parameter 2: The user's password\n* ArcGIS Server url or parameter 3: Base url of the AGS, such as http://fooags.blah.com or https://foo.blah.com:6443 \n* Portal url or parameter 4: If you need to retrieve your token from a federated portal, enter the base url of the portal such as http://fooportal.blah.com:7080 or https://fooportal.blah.com.  If your AGS is not federated to Portal, just ignore this item.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpauldzy%2Fdz_ags_audit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpauldzy%2Fdz_ags_audit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpauldzy%2Fdz_ags_audit/lists"}