Self-Aware Applications: Automatic Production Monitoring
summary
Shows concrete methods: use performance counters to detect threshold breaches (example rule: >80% CPU for seconds), then start an ETW sampling session to collect call stacks and produce flame graphs via live stacks; attach CLRMD to take heap snapshots, diff object counts to reveal leaking types, and traverse thread wait graphs to detect deadlocks. Demos produce a stack trace that pointed to an expensive Gmail hash, sampled CPU hotspots, allocation events, and a two-thread cycle that proves a deadlock.
AI-written summary · about
chapters (8)
- 0:00Intro
- 1:04Motivation
- 12:27CPU Profiling
- 16:54Demonstration
- 24:27Memory Usage
- 26:06Memory Monitoring
- 31:30deadlock detection
- 38:02other scenarios
related talks
55mPreemptive monitoring applications in production
44mObservability Tools C++: Beyond GDB and printf - Tools to Understand the Behavior of Your Program
53mDebugging .NET Apps
55mPower your .NET application with the new generation of diagnostics
01h 01mThe Performance Investigator's Field Guide
01h 04mAdvanced .NET debugging techniques from real world investigations
56mContinuous Profiling the missing piece in your observability puzzle
47mManaging and monitoring a JVM
