DevOps for Windows Azure – Surviving FailureMichele Leroux [email protected]
2© DEVintersection. All rights reserved.
http://www.DEVintersection.com
Michele Leroux BustamanteManaging Partner
Solliance (solliance.net) CEO and Cofounder
Snapboard (snapboard.com)
Microsoft Regional Director Microsoft MVP
Author, SpeakerPluralsight courses on the way!Blog: michelebusta.com
@michelebusta
If it’s not thereyou can’t see it
4© DEVintersection. All rights reserved.
http://www.DEVintersection.com
Logs
IIS Logs HTTP Errors Redirects Internal Server Errors
Windows Event Logs (Cloud Service Only) Performance Counters
Memory, CPU, Disk Access, Requests Custom Counters (Cloud Service Only)
Trace Logs Trace.XXX()
5© DEVintersection. All rights reserved.
http://www.DEVintersection.com
Setting up Web Site Logging
6© DEVintersection. All rights reserved.
http://www.DEVintersection.com
Site Diagnostics
7© DEVintersection. All rights reserved.
http://www.DEVintersection.com
Application Logs
Demo
Web Site Logs
11© DEVintersection. All rights reserved.
http://www.DEVintersection.com
Setting up Cloud Service Logging
Programmatically During role initialization Enable diagnostics and storage transfer settings Enable windows logs Enable performance counters
WADcfg (preferred) Used to be XML raw Now VS has user experience
Demo
Cloud Service Logs
13© DEVintersection. All rights reserved.
http://www.DEVintersection.com
Managing Logs
What if you have many sites and cloud services Aggregate into single table
You’ll need filters By application By type of log By deployment
Can create filters with management tool I.e., Cloud Storage Studio
Make loggingEASY
15© DEVintersection. All rights reserved.
http://www.DEVintersection.com
Encapsulate Logging
Simplify logging for the developer Create a DiagnosticsHelper
Methods for Debug, Info, Warning, Exception tracing Methods for throwing exceptions throughout application A method for serious exceptions, send email on exception to
admin Be sure to swallow DiagnosticHelper exceptions
Logging should not introduce new issues, wrap that up! Can be shared
Web Sites Cloud Services
Demo
Encapsulating Logging
ETW is fastDO NOT be afraid to use it
18© DEVintersection. All rights reserved.
http://www.DEVintersection.com
Event Tracing for Windows (ETW)
Part of the Windows operating system since Windows 2000 Tools have improved significantly since then
Tools for developers, for IT and for customers to work with Highly efficient tracing mechanism with decoupled architecture Enable or disable dynamically
No application restarts required Available to Azure Cloud Services and Web Sites
Trace.XXX()
19© DEVintersection. All rights reserved.
http://www.DEVintersection.com
ETW Tracing Components
ETW Consumer Application
TraceLogs
ApplicationEvent
Provider A
Event Provider
B
ETW Session
ETW Controller
Enable/ Disable
Associate Providers with Session
TraceEvents
TraceEvents
Events(Real-Time)
Events
Events(Persisted)
If you don’t lookyou won’t know it’s there
21© DEVintersection. All rights reserved.
http://www.DEVintersection.com
Monitoring
Performance Counters Memory CPU Requests
Demo
Monitoring
23© DEVintersection. All rights reserved.
http://www.DEVintersection.com
24© DEVintersection. All rights reserved.
http://www.DEVintersection.com
Notably missing: RFC 418!!!!
Be nice if someonetold ME!
Demo
Alerts
27© DEVintersection. All rights reserved.
http://www.DEVintersection.com
28© DEVintersection. All rights reserved.
http://www.DEVintersection.com
Service Levels and Reports
Customers want proof of SLA compliance Your average up time measured monthly
Not including scheduled downtime Sometimes scheduled downtime is limited 99.95 availability is typical
Your average request time measured monthly Should exclude special services/page (i.e. data upload, large
reports) 2s per request average is usually desired, an SLA may state 5s
(whew)
29© DEVintersection. All rights reserved.
http://www.DEVintersection.com
Analytics Products to Consider
Azure Portal (built in) Paraleap Stackify NewRelic Pingdom Right Scale JumpCloud
30© DEVintersection. All rights reserved.
http://www.DEVintersection.com
31© DEVintersection. All rights reserved.
http://www.DEVintersection.com
32© DEVintersection. All rights reserved.
http://www.DEVintersection.com
33© DEVintersection. All rights reserved.
http://www.DEVintersection.com
34© DEVintersection. All rights reserved.
http://www.DEVintersection.com
It all comes down toone thing…
CUSTOMERS
37© DEVintersection. All rights reserved.
http://www.DEVintersection.com
References
Conference resources: http://michelebusta.com
See my snapboards: Currently at the alpha site:
http://snapboardalpha.cloudapp.net/michelebusta Will move these to snapboard.com/michelebusta when we go
live on the main site (SOON watch my blog for announcement) Contact me:
[email protected] @michelebusta
Top Related