Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San...
-
Upload
theo-jungeblut -
Category
Technology
-
view
832 -
download
0
description
Transcript of Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San...
![Page 1: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/1.jpg)
Debugging, Troubleshooting
Distributed Web & Cloud Applications
San Diego, July 27th, 2013
SolCalCode Camp
![Page 2: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/2.jpg)
Theo Jungeblut• Engineering manager & lead by day
at AppDynamics in San Francisco
• Coder & software craftsman by night
• Architects decoupled solutions tailored to business needs & crafts maintainable code to last
• Worked in healthcare and factory automation, building mission critical applications, framework & platforms
• Degree in Software Engineeringand Network Communications
• Enjoys cycling, running and [email protected]
www.designitright.net
![Page 3: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/3.jpg)
Warning• Contains also proprietary
software
• This areas are pointed out
• Please walk away now,if that is not acceptable for you, it’s okay
![Page 4: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/4.jpg)
Overview• Inquiry about the Status Quo • Some Facts -> Dev Process & Ops Reality• Monolithic Applications• Debugging & Logging• Distributed Applications• Side Effects you need to troubleshot• Performance Counter• Microsoft IntelliTrace• AppDynamics• Summary• Q & A
![Page 5: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/5.jpg)
We need YOU!
![Page 6: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/6.jpg)
How agile are You?
![Page 7: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/7.jpg)
The Impact of Process
* from Wikipedia: http://en.wikipedia.org/wiki/File:Agile-vs-iterative-flow.jpg
![Page 8: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/8.jpg)
How many releases do your company
have a year?
![Page 9: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/9.jpg)
Typical Releases a Year*
58%
17%
21%3%
2+ monthsmonthlyweeklydaily
http://www.appdynamics.com/blog/2011/12/14/storm-clouds-in-2012-summary-of-appdynamics-apm-customer-survey/
![Page 10: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/10.jpg)
Development + Operations = DevOps
* from Wikipedia: http://en.wikipedia.org/wiki/File:Agile-vs-iterative-flow.jpg
![Page 11: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/11.jpg)
Difference between Dev & Ops
Dev• Getting / being agile: need for frequent updates
with new feature and bug fixes• Achieves stability trough running latest
Ops• Highest goal: stable execution flawless execution,
by knowing the environment and software• Achieves stability through careful rollouts
![Page 12: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/12.jpg)
“The Past/Present”*
WebServer DBUser
* or maybe still your present?
![Page 13: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/13.jpg)
“The Past/Present” - Architecture
Data Access Layer
Business Logic Layer
Presentation Layer
DB
![Page 14: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/14.jpg)
How are you troubleshooting?
![Page 15: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/15.jpg)
Traditional Debugging
![Page 16: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/16.jpg)
Traditional Debugging
Advantages• Visibility for executed code path
Disadvantages• Performance impact• Requires software installation• Often not possible in production• Typical does not find easily distributes issues• Only real time results
![Page 17: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/17.jpg)
Log Files
Advantages• Output adjustable without restart• Accepted in Production
Disadvantages• Manual, time intense creation of log statements• Manual, time intense process of result review• Limited scope & visibility • Potentially high performance impact based on IO
![Page 18: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/18.jpg)
“The Present/Future”- Architecture
Microsoft MSDN: http://msdn.microsoft.com/es-es/architecture/gg189193
![Page 19: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/19.jpg)
“The Present/Future”ASP.NET MVC 3/4
(IIS)User
WAS Tomcat
Azure Web Role
SQL Server MySQL
Active Directory
Azure Worker Role
WAS
3rd Party Web Services
JavaApplication
MongoDB
3rd Party Web Services
HTTP/JSON
LDAP
WCF
WCF HTTPJDBC
ADO.NET
.NET Service Bus
.Net Service Bus
HTTP
ADO.NET
HT
TP
![Page 20: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/20.jpg)
The (Netflix) Distributed Reality *
* http://techblog.netflix.com/2012/06/netflix-operations-part-i-going.html
![Page 21: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/21.jpg)
What has this to do with
Debugging and
Troubleshooting?
![Page 22: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/22.jpg)
Who does really know how their application
is performing?
![Page 23: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/23.jpg)
What impactsApplication
Performance?
![Page 24: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/24.jpg)
Concurrency
http://en.wikipedia.org/wiki/File:Smithposter.jpg
• Deadlocks• Raise Conditions• Unexpected complexity• …
![Page 25: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/25.jpg)
Data Volume
http://en.wikipedia.org/wiki/File:Smithposter.jpg
• constantly increasing• Volume hides details• Handling volume
impacts resources• …
![Page 26: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/26.jpg)
Resources
http://blog.laptopmag.com/amd-cries-foul-but-tests-show-battery-life-inferior-to-intels/battery_morpheus
• are limited• Danger of Starvation• …
![Page 27: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/27.jpg)
Who is Performance Testing
every release?
![Page 28: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/28.jpg)
http://www.slideshare.net/appdynamics/what-can-devops-learn-from-formula-1
![Page 29: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/29.jpg)
Dev + Ops = Success• DevOps has to be a combined approach• Mostly no visibility in real performance
& production state
![Page 30: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/30.jpg)
IntelliTrace™
• “Flight Recorder” for your Process• Records configurable details• Allows offline analysis• Microsoft specific Tool in Visual Studio
Let’s take a look
http://msdn.microsoft.com/en-us/library/hh398365.aspx
![Page 31: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/31.jpg)
Summary IntelliTrace
Advantages• Allows great visibility into single process/AppPool• Allows to play back test or production issue
Disadvantages• Limited to Single Process / AppPool Visibility• Should be only temporally enable in production• Requires configuration effort for balance between
details & performance
![Page 32: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/32.jpg)
Performance Counter• Collect machine wide and process
specific data• Allows on- and offline analysis• Microsoft specific tool build into
Windows
http://www.codeproject.com/Articles/8590/An-Introduction-To-Performance-Counters
![Page 33: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/33.jpg)
Summary Performance Counter
Advantages• Huge OOTB support in Windows/IIS/etc.• Low overhead• Extensible
Disadvantages• Collecting application specific data requires
source code changes
![Page 34: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/34.jpg)
AppDynamics
• Application Performance Management• Optimized for Production• Monitoring instead of investigating• Providing the “Right-Data”
Let’s take a look
http://www.appdynamics.com/products-editions.php
![Page 35: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/35.jpg)
Summary AppDynamics
Advantages• Works in production on high performance sides• Monitors, Notify, Troubleshoot• Allows instance handling in cloud environments• Free lite version
Disadvantages• Full version not free• Does not include every application detail
![Page 36: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/36.jpg)
Build your own Opinion (for Free)
• Lite Version free but limited
• 30 days free Trial of Pro & Azure Version
http://www.appdynamics.com/products-free-download.php
![Page 37: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/37.jpg)
Summary
• Understand Dev Impact to Ops Execution• Understand the business impact of
production issues• Monolithic is simpler to Troubleshoot• Distributed is more complex• The right tools can make a Big Difference
![Page 38: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/38.jpg)
Downloads, Feedback & Comments:
Q & A
Graphic by Nathan Sawaya courtesy of brickartist.com
[email protected] www.speakerrate.com/theoj
www. slideshare.net/theojungeblut
![Page 39: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/39.jpg)
Blog, Rating, Slides
http://www.DesignItRight.net
www.speakerrate.com/theoj
www.slideshare.net/theojungeblut
![Page 40: Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications at SoCal Code Camp San Diego (07/27/2013)](https://reader035.fdocuments.in/reader035/viewer/2022070303/54b773594a7959df648b45aa/html5/thumbnails/40.jpg)
… thanks for you attention!
And visit and support the
www.sandiegodotnet.com
Please fill out the feedback, and…
www.speakerrate.com/theoj