(R)evolutionize APM
-
Upload
andreas-grabner -
Category
Documents
-
view
403 -
download
3
Transcript of (R)evolutionize APM
1 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Dynatrace
Dynatrace Lunch & Learn
2 @Dynatrace
• 5,700 customers, from Born-In-The-Cloud to Global 2000
• Gartner Market Share leader for two consecutive years
• Used by 17 of the top 20 online retailers - Internet RETAILER, 2014 TOP 500 Guide
• Net Promoter Score of 89, best NPS among all APM vendors
• 600 R&D and 300 technical experts - Largest expertise in APM
Dynatrace
3 @Dynatrace
- by learning from DevOps Movement
- More on http://blog.dynatrace.com
Hosted by: Andreas Grabner - @grabnerandi
(R)Evolutionize APM
4 @Dynatrace
5 @Dynatrace
6 @Dynatrace
7 @Dynatrace
The stuff we did when we were a Start Up
and we All were
Devs, Testers and Ops
8 @Dynatrace
Improve Collaboration between Developers and Operators and
• Stop wasting money
• Stop wasting time
• Stop frustrating people
• Start building great systems
•And do it much faster and more frequent!
The Idea is to …
9 @Dynatrace
Who made the transition?
700 Deployments / Year
50-60 Deployments / Day
10+ Deployments / Day
Every 11.6 seconds
10 @Dynatrace
Inside the Amazon Numbers!
75% fewer outages since 2006
90% fewer outage minutes
~0.001% of deployments cause a problem
Instantaneous automatic rollback
Deploying every 11.6s
11 @Dynatrace
Recommended Book
It’s a culture thing
12 @Dynatrace
Status Quo: Unreliable Software Impacts Business
13 @Dynatrace
The “War Room”
Facebook – December 2012
14 @Dynatrace
~80% of problems
caused by ~20% patterns
YES we know this
80% Dev Time in Bug Fixing
$60B Defect Costs
BUT
15 @Dynatrace
4 Situations on
WHY this happened,
HOW to avoid it
Metrics to look at
16 @Dynatrace
17 @Dynatrace
#Push without a Plan
18 @Dynatrace
Mobile Landing Page of Super Bowl Ad
434 Resources in total on that page:230 JPEGs, 75 PNGs, 50 GIFs, …
Total size of ~ 20MB
19 @Dynatrace
Metrics: Load Time, # Resources (Images, …),
# HTTP 3xx, 4xx, 5xx
Dev: Build for Mobile
Test: Test on Mobile
Ops: Monitor Mobile
20 @Dynatrace
21 @Dynatrace
#“Blindly” (Re)use Existing
Components
22 @Dynatrace
Requirement: We need a report
23 @Dynatrace
Using Hibernate results in 4k+ SQL Statements to display 3 items!
Hibernate Executes 4k+ Statements
Individual Execution VERY
FAST
But Total SUM takes 6s
24 @Dynatrace
Metrics: # Total SQLs# SQLs / Web Request# Same SQLs / Request
Transferred Rows
Test: With realistic Data
Dev: “Learn” Frameworks
Ops: Monitor Usage
25 @Dynatrace
26 @Dynatrace
Don’t assume
You know the environment
27 @Dynatrace
Distance Calculation Issues
480km biking in 1 hour!
Solution: Unit Test in Live App reports Geo
Calc Problems
Finding: Only happens on certain
Android versions
28 @Dynatrace
3rd Party Issues
Impact of bad 3rd party calls
29 @Dynatrace
Metrics: Crashes, Exceptions, # and Status of 3rd Party Calls, Payload of
Web Service Calls
Dev: Build for Mobile
Test: Test on Mobile and Diff. Carriers
Ops: Monitor Mobile
30 @Dynatrace
31 @Dynatrace
#No “Agile” Deployment
32 @Dynatrace
Load Spike resulted in UnavailabilityAd
on
air
33 @Dynatrace
Alternative: “GoDaddy goes DevOps”
1h before SuperBowl KickOff
1h after Game ended
34 @Dynatrace
Behind the Scenes
35 @Dynatrace
Metrics: AvailabilityPage Size, # Objects
# Hosts, # Connections
DevOps: “Feature” Switches
36 @Dynatrace
Commit Stage• Compile• Execute Unit Test• Code Analysis• Build installers
Automated Acceptance
Testing
Automated Capacity Testing
Manual testing• Key showcases• Exploratory testing Release
Unit & Integration Tests
Functional Tests
Performance TestsProductionMonitoring
Functional Tests
37 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Dynatrace
Deep Dive• Deepest visibility
• All transactions
• Discrete transaction tracing
• Code-level details
• Full lifecycle integration
Synthetics• SaaS Delivery
• World Presence
• Running in minutes
• Worldwide network
• Web & mobile
• Enterprise Apps
Passive Network• Real User Monitoring
• Passive
• All Apps
• Tier-by-tier
• Network visibility
Dynatrace
APM
• Development • Test • Production • Business
SaaS Delivery Model• Internet Synthetic• Industry Benchmarks• dynaTrace DTM• User Experience• Mobile
On Prem Delivery Model• DCRUM• dynaTrace DTM• Synthetic Enterprise• Real User Experience• APM in the Lifecycle
The Dynatrace APM Trifecta
38 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Dynatrace
Dynatrace SyntheticGlobal Internet Transaction Management Deep Dive
•Deepest visibility
•All transactions
•Discrete transaction tracing
•Code-level details
•Full lifecycle integration
Synthetics
•SaaS-delivered
•Running in minutes
•Worldwide network
•Web & mobile
Passive
•Real Users
•Passive
•All Apps
•Tier-by-tier
•Network visibility
39 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Dynatrace
Synthetic AgentsDeployed and managedby Dynatrace
The World’s Most Comprehensive Performance and Testing Network
High Volume Load Generation
13 Global locations
CloudBackbone Last Mile
Web Performance Management100+ locations
Web Performance Management and
Load Testing 10,000’s+ locations
Mobile
Dozens of countries connected to real wireless carriers
Synthetic Private AgentsDeployed by Customer• SaaS Private Agents• SaaS Private Peers• Enterprise Synthetic (OnPrem)
40 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Dynatrace
APM Portal - Out of The Box Dashboards
Critical Transactions
3rd Party
Errors
Global Perspective
41 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Dynatrace
Automated Diagnostics and Drilldown to PurePath
Home page is slow
Event Notification
Problem Identification
Automatic Problem Analysis
1st Byte Time
42 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Dynatrace
Datacenter MonitoringPassive Application Monitoring
Featuring• Transaction Trace Analysis
Deep Dive
•Deepest visibility
•All transactions
•Discrete transaction tracing
•Code-level details
•Full lifecycle integration
Synthetics
•SaaS-delivered
•Running in minutes
•Worldwide network
•Web & mobile
Passive
•Real Users
•Passive
•All Apps
•Tier-by-tier
•Network visibility
43 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Dynatrace
How Does It Work?
• Fault Domain Isolation: Locate Bottlenecks
• Business Impact: Managing vs. Monitoring
• Prioritization: Affected Users, Affected Transactions
• All Applications: Across entire datacenter
• All Users: By User ID, By Locations, Citrix, VM, WAN, and LAN
• Always On: Continuous data feed of Performance
44 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Dynatrace
Affected Users
Cross-Tier FDI
Synthetic Network Health
Overlay Charts
Centralized View of All Applications
45 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Dynatrace
Client Delays Shown Here
Detailed Operation Breakdown
46 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Dynatrace
Dynatrace ApplicationDeep Transaction Monitoring Deep Dive
•Deepest visibility
•All transactions
•Discrete transaction tracing
•Code-level details
•Full lifecycle integration
Synthetics
•SaaS-delivered
•Running in minutes
•Worldwide network
•Web & mobile
Passive
•Real Users
•Passive
•All Apps
•Tier-by-tier
•Network visibility
47 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Dynatrace
Test Environment
Production Environment
8x slower
3x more SQL
48 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Dynatrace
Test Environment Production Environment
Hibernate, Classloading,
XML – The Key Hotspots
Hibernate, Classloading, XML
– The Key Hotspots
I/O for Web Requests doesn’t
even show up!
That’s Normal: Having I/O for Web
Request as main contributor
49 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Dynatrace
Top Contributor Class.getInterfaces
Called from Hibernates FieldInterceptionHelper
These calls all originate form thousands of calls to
find item by code
50 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE #Dynatrace
Every 11.6 seconds
Commit Stage• Compile• Execute Unit Test• Code Analysis• Build installers
Automated Acceptance
Testing
Automated Capacity Testing
Manual testing• Key showcases• Exploratory testing Release
Unit & Integration Tests
Functional Tests
Performance TestsProductionMonitoring
Functional Tests
51 @Dynatrace
Andreas GrabnerDynatrace Developer Advocate
@grabnerandi
http://blog.dynatrace.com