Taming of the (ArcGIS) Server Susan Carlson, Julie Kottamala, David Torraca Loudoun County Office of Mapping and Geographic Information
Overview Background – How did we get here? Tuning & Monitoring – What do we do with it?
ArcGIS Desktop Environment
ArcGIS Server Environment
Scheduled Tasks
Applications
Applications
Applications
Applications
Applications
Supported Applications
Supported Applications
Supported Applications
Supported Applications
Supported Applications
Supported Applications
Supported Applications
http://gep.frec.vt.edu/va_utc.html
Services
Applications in the works Mobile Apps: y Sidewalks and trails y Emergency Operations Center photo capture y Intersection proffer management y Stormwater structures lookup (compact API for
Blackberry/mobile) y Stormwater structures maintenance y Bus route finding i.e. “where’s the bus now” y Hunting analysis y Fire Hydrant mapping
Concerns y Application Accessibility 24/7 y Human Resources y System Resources y Licensing y Application Creep y System Growth y Reporting
Tuning & Monitoring Tuning – development y Web Services y Applications
Monitoring – production y Web Services y Applications y System
Tuning Web Service Development y Data – local FGDB on each server y Map Documents y Authoring specifications (Esri recommendations) y Map Service Publishing toolbar
y Caching – base layers, imagery y Fixes y Service settings y y
Recycle hourly – to keep services ‘awake’ Min. # instances to 0 – to restart services on Test server
y Scheduled Task – open REST services and websites y Geoprocessing Service – use from internet server only
Tuning Application Development: Firebug & YSlow y Runtime errors y Console logging y Network usage y Performance
Free Browser Add-ons for Firefox
http://getfirebug.com/
http://yslow.org/
Monitoring Source
Monitoring Tool
HTTP Requests
Google Analytics
Geocortex Optimizer
IIS (Web) Log Files
WebLog Expert Lite
Geocortex Optimizer
Performance Counters (Windows)
Server Manager Diagnostics
Geocortex Optimizer
ArcGIS Server Log Files
ArcGIS Server Manager / ArcCatalog
Probes & Alarms
Geocortex Optimizer
Java/Python Custom Script
Service Monitor Esri ArcScript
Geocortex Optimizer
Google Analytics y Free web statistics – internet only y Hosted by Google y Requires: y Analytics Account y Tracking ID for each site y Add tracking code snippet to web page y Collects: y HTTP request of the visitor y Browser/system information y Can be customized for Event Tracking (tool usage) http://www.google.com/analytics/
Google Analytics Visits: for Performance Measures
Google Analytics Avg. Page Load Time: View potential issues
Google Analytics Browser Usage: For development and testing
WebLog Expert Lite y y y y
Free web statistics – internet & intranet Installed locally Reads IIS/Apache logs Reports on demand
For Performance Measures
http://www.weblogexpert.com/lite.htm
Geocortex Optimizer Monitoring software purchased from Latitude Geographics y Reporting – web interface or export PDF y Tool usage in site y Popular Layers y Popular Extents y Map Service load time y System Performance y Alarms – email alerts y Website down y Services down y Server down http://www.latitudegeo.com/ http://www.geocortex.com/arcgis-server-software/geocortex-optimizer/
Geocortex Optimizer
Geocortex Optimizer Reporting: Website Tool Usage –JavaScript code in application
Geocortex Optimizer Reporting: 20 Most Popular Layers – ArcGIS Server log files
Geocortex Optimizer Reporting: Layer Processing Time & Most Costly Services
Geocortex Optimizer Reporting: Windows Performance Counters
Geocortex Optimizer Reporting: % Uptime, % Availability – Pings/Probes
Geocortex Optimizer Alarms y Ping y Servers y Probes y Sites y Services y Sends email
Still to do: Add System Performance alarms
Geocortex Optimizer Monitoring the Monitor y Geocortex Agent Service – stopped after MS Updates reboot y Set MS Updates to 1x per week (all servers) y Scheduled task – starts service if stopped, sends email y SQL Server – database growth y Log file location – double records when moved y Delete records – issue with deleting > 1 day y Collection intervals – settings to decrease # records y Alarms y Emails during maintenance y Probes – max # web sites is 4
Geocortex Optimizer Using the Monitor y Daily – Check for email alerts y Quarterly y Review of Monthly Reports y Backup/delete records from SQL Server y Backup/delete IIS and ArcGIS Server logs y Constraints y No reporting for tools and layers not being accessed y Staff time to review reports
Heat Map
Final Thoughts y Suite of tools help to educate analysts on the use of the
applications and lead to better management of the servers y Alerts and alarms assist in identifying issues with the
application components and the servers y Improves communication with management and users y Enhances planning for future applications and system
growth
Thank you!
[email protected] [email protected] [email protected] www.loudoun.gov/omagi Phone: 703-771-5778