Reporting
The Report section in Quetzly Validator lets you run a full health check across an entire ArcGIS Server instance in one click. Quetzly discovers every service in every folder, runs assertion checks on each one, and presents the results in a sortable table with summary charts — all exportable as a PDF.
Accessing the Report Interface
- Click the Report icon in the left sidebar
- The Report panel displays:
- Server URL input: Enter your ArcGIS Server root URL
- Run button: Start the health check
- Export PDF button: Download the report as a PDF (visible after a run)
- Results dashboard: Summary cards, charts, and the service table
Running a Report
- Enter your ArcGIS Server root URL in the input field:
https://yourserver.com/arcgis/rest/services - Click "Run"
- Quetzly will:
- Discover all services across all folders
- Run assertion checks on each service concurrently
- Display a progress message as it works
- Results appear automatically when the scan is complete
Understanding the Results
Summary Cards
At the top of the report, four cards give you an at-a-glance overview:
| Card | Description |
|---|---|
| Total Services | Total number of services discovered, with a type breakdown |
| Health Score | Percentage of services with all checks passing |
| Critical Outages | Number of services with critical failures |
| Avg Response | Average response time across all services (ms) |
Charts
Two charts provide a visual summary:
- Health Donut Chart: Shows the proportion of Healthy / Warning / Critical / Unsupported services
- Service Type Bar Chart: Shows the count of each service type (MapServer, FeatureServer, ImageServer, etc.)
Service Table
The table lists every discovered service with the following columns:
| Column | Description |
|---|---|
| Service | Service name and folder path. Click the name to open the service in the API section. |
| Type | Service type (MapServer, FeatureServer, ImageServer, GPServer, etc.) |
| Status | 🟢 Healthy · ⚠️ Warning · 🔴 Critical · ⬜ Unsupported |
| Issues | List of failed assertion checks |
| Response | Response time in milliseconds |
Click any column header to sort the table by that column.
Filtering Results
Use the filter buttons above the table to narrow down the view:
- All — Show every service
- Healthy — Only services that passed all checks
- Warning — Services with non-critical failures
- Critical — Services with critical failures
Assertion Checks by Service Type
MapServer
| Check | What it verifies |
|---|---|
| Service reachable | HTTP 200 returned |
| Has layers | At least one layer defined |
| Spatial reference | WKID is consistent with extent coordinates |
| Export map | A map export request returns a valid image |
FeatureServer
| Check | What it verifies |
|---|---|
| Service reachable | HTTP 200 returned |
| Spatial reference defined | Service has a spatial reference |
| Spatial reference consistent | WKID matches the extent coordinate scale |
| Has layers/tables | At least one layer or table defined |
| Feature counts | Each layer contains at least one feature |
ImageServer
| Check | What it verifies |
|---|---|
| Service reachable | HTTP 200 returned |
| Valid extent | Extent is not 0,0,0,0 |
| Pixel size | Pixel size is non-zero |
| Band count | Band count is non-zero |
| Spatial reference | Spatial reference is defined |
GPServer
Quetzly confirms the service is reachable (HTTP 200). Detailed GP task checks are not currently implemented.
Other Service Types
Services that are not MapServer, FeatureServer, ImageServer, or GPServer are marked as Unsupported (⬜) and skipped.
Status Icons
| Icon | Meaning |
|---|---|
| 🟢 | All assertion checks passed |
| ⚠️ | Some checks failed, but no critical issues |
| 🔴 | Critical failure — service unreachable, no layers, bad status, etc. |
| ⬜ | Service type is not currently supported for assertion checks |
Opening a Service in the API Section
Click any service name link in the table to jump directly to the API section with the service URL and type pre-filled, ready to inspect further.
Exporting a PDF Report
After a run completes, click Export PDF to download the full report as a PDF:
- Includes the Quetzly logo and server URL header
- Captures the charts and the full service table
- Automatically named
quetzly-dashboard-YYYY-MM-DD.pdf - Formatted as A3 landscape for readability
Tips
- Large servers: For servers with many services and folders, the scan may take a minute or two. A progress message keeps you informed.
- Rate limiting: Running reports frequently against the same server may trigger rate limits on the server side.
- Unsupported types: Services shown as ⬜ Unsupported are discovered and listed, but no assertion checks are run on them.