SlideShare a Scribd company logo
Debugging Apps and Analysing Usage
with Visual Studio 2013
Visual Studio 2013 Airlift
05-12-2013
jorge.borralho@xpand-it.com

www.xpand-it.com
Proprietary & Confidential
who am i

• Jorge Borralho
• 8+ years in application development
– mainly with Microsoft products – C#, asp.net, mvc, sharepoint,
sql server

2003 - 2013

© Copyright Xpand IT

www.xpand-it.com
abstract

• Debug tools
x64 bits edit &
continue

Return value
inspection

Asynchronous
Debugging

Just my code
(javascript)

Intelitrace
debugging

Dump file
analysis

Energy
consumption

Code map

• Profiling tools
Microsoft
Monitoring Agent

2003 - 2013

© Copyright Xpand IT

www.xpand-it.com
x64 edit & continue

• Must target 4.5.1
• Using 3rd party hosts must use IIS Express

2003 - 2013

© Copyright Xpand IT

www.xpand-it.com
Return value inspection

• Inspect functions/nested functions return values relevant
to current debugging session

Demo

2003 - 2013

© Copyright Xpand IT

www.xpand-it.com
Asynchronous debugging

• Simplified infraestructure code in call stack
• Visualize tasks

VS 2012

VS 2013

2003 - 2013

© Copyright Xpand IT

www.xpand-it.com
Just my code – JS & C++

• Step through 3rd party code right to your code;
• Ignore Exceptions managed by 3rd party code.

Demo

2003 - 2013

© Copyright Xpand IT

www.xpand-it.com
Code map

• Enhanced Call Stack

Demo

2003 - 2013

© Copyright Xpand IT

www.xpand-it.com
MMA & Intelitrace Debugging

• Diagnose problems in deployment with Visual Studio and
Microsoft Monitoring Agent

• Enabling MMA:
–
–
–

•

Impacts app performance
–
–

2003 - 2013

<ModuleList isExclusionList="false">

<Name>PublicKeyToken:B77A5C561934E089</Name>
Configure witch modules to monitor
<Name>PublicKeyToken:B03F5F7F11D50A3A</Name>
Start monitoring (defining trace level) PS C:>Start-WebApplicationMonitoring "IIS:Test.Web" Monitor
<Name>PublicKeyToken:31BF3856AD364E35</Name>
"C:IntelliTraceLogs”
<Name>PublicKeyToken:89845DCD8080CC91</Name>
Capture Intelitrace snapshot
<Name>PublicKeyToken:71E9BCE111E9429C</Name>
</ModuleList>

Enabled to whole application pool
Captures (almost) every object value in method-calls from defined modules

© Copyright Xpand IT

www.xpand-it.com
MMA & Intelitrace Debugging

• Debugging from Intelitrace Log
– Matching source files and symbols (.pdb)
– Visual Studio 2013 ultimate
– .iTrace file

2003 - 2013

© Copyright Xpand IT

www.xpand-it.com
MMA & Intelitrace Debugging

• Review Performance Violation (1/3)

Review recorded events and choose to “dig deeper”
2003 - 2013

© Copyright Xpand IT

www.xpand-it.com
MMA & Intelitrace Debugging

• Review Performance Violation (2/3)

See multiple calls to this event, review slowest ones and debug them
2003 - 2013

© Copyright Xpand IT

www.xpand-it.com
MMA & Intelitrace Debugging

• Review Performance Violation (3/3)

Review call stack, recorded values, step through and access Intelitrace
2003 - 2013

© Copyright Xpand IT

www.xpand-it.com
MMA & Intelitrace Debugging

• Exception Data

Get all exceptions recorded – and debug them
2003 - 2013

© Copyright Xpand IT

www.xpand-it.com
MMA & Intelitrace Debugging

• Analysing Sharepoint unhandled exception (1/3)

Get the Correlation Id

2003 - 2013

© Copyright Xpand IT

www.xpand-it.com
MMA & Intelitrace Debugging

• Analysing Sharepoint unhandled exception (2/3)

Go to Analysis in the iTrace file and search by correlation Id

2003 - 2013

© Copyright Xpand IT

www.xpand-it.com
MMA & Intelitrace Debugging

• Analysing Sharepoint unhandled exception (3/3)

Get full info in the exception, step into the intelitrace in that moment
2003 - 2013

© Copyright Xpand IT

www.xpand-it.com
Dump file analysis

• When a long running app starts behaving sluggishly or
crashes with OutOfMemoryException, or even the whole
server/system slows down
– Probably bad memory usage:
• Memory leaks
• Unnecessary allocation
• Inefficient memory use

• Better analyze the memory dump
– using task manager, procdump (sysinternals) or even VS 2013
(capturing a breakpoint)

2003 - 2013

© Copyright Xpand IT

www.xpand-it.com
Dump file analysis

• Analyse them directly in visual studio

Demo

2003 - 2013

© Copyright Xpand IT

www.xpand-it.com
Energy Consumption (1/3)

• The Visual Studio Energy Consumption profiler helps
you analyze the power and energy consumption of
Windows Store apps on low-power tablet devices that run
all or part of the time on their own batteries. On a
battery-powered device, an app that uses too much
energy can cause so much customer dissatisfaction that,
eventually, customers might even uninstall it. Optimizing
energy use can increase your app’s adoption and use by
customers.

2003 - 2013

© Copyright Xpand IT

www.xpand-it.com
Energy Consumption (2/3)

• What’s measured?

• Mark profiling data

2003 - 2013

© Copyright Xpand IT

www.xpand-it.com
Energy Consumption (3/3)

• Configure device and collect data

• Profile data

2003 - 2013

© Copyright Xpand IT

www.xpand-it.com
Q

&

A

jorge.borralho@xpand-it.com
2003 - 2013

© Copyright Xpand IT

www.xpand-it.com

More Related Content

PPTX
Application Performance Tuning Techniques
PPTX
Next-gen Automation Framework
PDF
Continuous Profiling in Production: What, Why and How
PDF
05 test infrastructure
PPT
Maximizing Efficiency Using Simulation
PDF
Test automation
PPTX
Multi-core Real-time Simulation of High-Fidelity Vehicle Models using Open St...
PPTX
Performance Bottleneck Identification
Application Performance Tuning Techniques
Next-gen Automation Framework
Continuous Profiling in Production: What, Why and How
05 test infrastructure
Maximizing Efficiency Using Simulation
Test automation
Multi-core Real-time Simulation of High-Fidelity Vehicle Models using Open St...
Performance Bottleneck Identification

What's hot (20)

PPTX
Performance testing using jmeter
PPTX
Workloads
PPTX
Automation Framework Presentation
PPTX
JMeter workshop
PDF
Automatic Test Case Generation
PPTX
Introduction to performance testing
PPTX
Performance Testing Using VS 2010 - Part 1
PDF
Performance Requirement Gathering
PPT
Jmeter From Scratch
PPT
Performance testing with Jmeter
PPTX
Load Runner
PDF
JMeter vs LoadRunner | Edureka
PDF
Lo 09
PPTX
Modelon Modelica executable requirements Ansys Conference 2016
PPTX
Performance Testing And Its Type | Benefits Of Performance Testing
PDF
Infographic: 5 Tips to Maximize ROI with XRF for Scrap Sorting
PPT
Load Testing Strategy 101
PDF
STPA and Software Verification
PPTX
Model-Based Design For Motor Control Development
PPT
Performance testing
Performance testing using jmeter
Workloads
Automation Framework Presentation
JMeter workshop
Automatic Test Case Generation
Introduction to performance testing
Performance Testing Using VS 2010 - Part 1
Performance Requirement Gathering
Jmeter From Scratch
Performance testing with Jmeter
Load Runner
JMeter vs LoadRunner | Edureka
Lo 09
Modelon Modelica executable requirements Ansys Conference 2016
Performance Testing And Its Type | Benefits Of Performance Testing
Infographic: 5 Tips to Maximize ROI with XRF for Scrap Sorting
Load Testing Strategy 101
STPA and Software Verification
Model-Based Design For Motor Control Development
Performance testing
Ad

Similar to Debugging Apps & Analysing Usage (20)

PPTX
Dot Net Application Monitoring
PPTX
Diagnosing issues in your ASP.NET applications in production with Visual Stud...
PPTX
Analyze Your Code With Visual Studio 2015 Diagnostic Tools
PDF
Kostiantyn Yelisavenko "Mastering Macro Benchmarking in .NET"
PPTX
Diagnostic Tips and Tricks for Windows Store Applications using Visual Studio...
PPTX
Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications a...
PPTX
Advanced Debugging with Visual Studio 2013 Preview
PDF
Debugging Performance Issues Using Visual Studio
PPTX
Visual Studio 2015 / Visual Studio Team Services Overview
PPTX
Memory profiler and garbage collector in C#
PPTX
Debugging your Way through .NET with Visual Studio 2015
PPTX
Microsoft DevOps Solution - DevOps
PDF
Chicago ALM User Group - Nov 2014 - Application Insights 101
PDF
Android talks #08 android profiling
PPTX
.Net debugging 2017
PDF
Application Insights and Jupyter Notebook(Opensource) combo to analyze large ...
PPT
Analyzing .Net Application Memory Usage And Issues
PPTX
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...
PPTX
Works on My Machine Syndrome
PPTX
Whats New In 2010 (Msdn & Visual Studio)
Dot Net Application Monitoring
Diagnosing issues in your ASP.NET applications in production with Visual Stud...
Analyze Your Code With Visual Studio 2015 Diagnostic Tools
Kostiantyn Yelisavenko "Mastering Macro Benchmarking in .NET"
Diagnostic Tips and Tricks for Windows Store Applications using Visual Studio...
Debugging,Troubleshooting & Monitoring Distributed Web & Cloud Applications a...
Advanced Debugging with Visual Studio 2013 Preview
Debugging Performance Issues Using Visual Studio
Visual Studio 2015 / Visual Studio Team Services Overview
Memory profiler and garbage collector in C#
Debugging your Way through .NET with Visual Studio 2015
Microsoft DevOps Solution - DevOps
Chicago ALM User Group - Nov 2014 - Application Insights 101
Android talks #08 android profiling
.Net debugging 2017
Application Insights and Jupyter Notebook(Opensource) combo to analyze large ...
Analyzing .Net Application Memory Usage And Issues
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...
Works on My Machine Syndrome
Whats New In 2010 (Msdn & Visual Studio)
Ad

More from Xpand IT (20)

PDF
Xray & Xporter were in Austria: Jira & Confluence Solutions Day 2018
PDF
Using Xamarin for your Mobile+ Apps – Xamarin Experience London 2017
PPTX
Xporter for Jira - Overview
PPTX
Xray for Jira - How to automate your QA process
PPTX
Xpand Addons - Addon Discovery Day 2017
PPTX
Xray for Jira 3.0 - What's New?
PPTX
Xray for Jira - Overview
PPTX
Xporter for Jira - Advanced topics
PDF
Keynote - Xamarin Experience London 2017
PPTX
Welcome & Introduction – Xamarin Experience London 2017
PDF
Gathering Customer Insights with Sitecore - Xamarin Experience London 2017
PPTX
Why Speed Matters in Mobile Apps – Xamarin Experience London 2017
PDF
Mobile & Cognitive Services | Harnessing the Power of IoT – Xamarin Experienc...
PDF
Atlassian Tools in Practice: A Customer Success Story – Xpand IT & Atlassian ...
PDF
The Secret Sauce of Successful Teams - Xpand IT & Atlassian JAM Sessions 2017
PPTX
Quality Assurance Made Easy in JIRA - Xpand IT & Atlassian JAM Sessions 2017
PDF
Improved Reporting with JIRA Add-ons - Xpand IT & Atlassian JAM Sessions 2017
PPTX
How our Team Collaborates with Atlassian Tools - Xpand IT & Atlassian JAM Ses...
PPTX
Welcome & Introduction - Xpand IT & Atlassian JAM Sessions 2017
PDF
The Real World with OpenShift - Red Hat DevOps & Microservices Conference 2017
Xray & Xporter were in Austria: Jira & Confluence Solutions Day 2018
Using Xamarin for your Mobile+ Apps – Xamarin Experience London 2017
Xporter for Jira - Overview
Xray for Jira - How to automate your QA process
Xpand Addons - Addon Discovery Day 2017
Xray for Jira 3.0 - What's New?
Xray for Jira - Overview
Xporter for Jira - Advanced topics
Keynote - Xamarin Experience London 2017
Welcome & Introduction – Xamarin Experience London 2017
Gathering Customer Insights with Sitecore - Xamarin Experience London 2017
Why Speed Matters in Mobile Apps – Xamarin Experience London 2017
Mobile & Cognitive Services | Harnessing the Power of IoT – Xamarin Experienc...
Atlassian Tools in Practice: A Customer Success Story – Xpand IT & Atlassian ...
The Secret Sauce of Successful Teams - Xpand IT & Atlassian JAM Sessions 2017
Quality Assurance Made Easy in JIRA - Xpand IT & Atlassian JAM Sessions 2017
Improved Reporting with JIRA Add-ons - Xpand IT & Atlassian JAM Sessions 2017
How our Team Collaborates with Atlassian Tools - Xpand IT & Atlassian JAM Ses...
Welcome & Introduction - Xpand IT & Atlassian JAM Sessions 2017
The Real World with OpenShift - Red Hat DevOps & Microservices Conference 2017

Recently uploaded (20)

PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Encapsulation theory and applications.pdf
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Approach and Philosophy of On baking technology
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
NewMind AI Monthly Chronicles - July 2025
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
KodekX | Application Modernization Development
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Modernizing your data center with Dell and AMD
Understanding_Digital_Forensics_Presentation.pptx
Encapsulation theory and applications.pdf
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Reach Out and Touch Someone: Haptics and Empathic Computing
Approach and Philosophy of On baking technology
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
NewMind AI Monthly Chronicles - July 2025
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Digital-Transformation-Roadmap-for-Companies.pptx
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
20250228 LYD VKU AI Blended-Learning.pptx
The Rise and Fall of 3GPP – Time for a Sabbatical?
Chapter 3 Spatial Domain Image Processing.pdf
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
KodekX | Application Modernization Development
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Modernizing your data center with Dell and AMD

Debugging Apps & Analysing Usage

  • 1. Debugging Apps and Analysing Usage with Visual Studio 2013 Visual Studio 2013 Airlift 05-12-2013 jorge.borralho@xpand-it.com www.xpand-it.com Proprietary & Confidential
  • 2. who am i • Jorge Borralho • 8+ years in application development – mainly with Microsoft products – C#, asp.net, mvc, sharepoint, sql server 2003 - 2013 © Copyright Xpand IT www.xpand-it.com
  • 3. abstract • Debug tools x64 bits edit & continue Return value inspection Asynchronous Debugging Just my code (javascript) Intelitrace debugging Dump file analysis Energy consumption Code map • Profiling tools Microsoft Monitoring Agent 2003 - 2013 © Copyright Xpand IT www.xpand-it.com
  • 4. x64 edit & continue • Must target 4.5.1 • Using 3rd party hosts must use IIS Express 2003 - 2013 © Copyright Xpand IT www.xpand-it.com
  • 5. Return value inspection • Inspect functions/nested functions return values relevant to current debugging session Demo 2003 - 2013 © Copyright Xpand IT www.xpand-it.com
  • 6. Asynchronous debugging • Simplified infraestructure code in call stack • Visualize tasks VS 2012 VS 2013 2003 - 2013 © Copyright Xpand IT www.xpand-it.com
  • 7. Just my code – JS & C++ • Step through 3rd party code right to your code; • Ignore Exceptions managed by 3rd party code. Demo 2003 - 2013 © Copyright Xpand IT www.xpand-it.com
  • 8. Code map • Enhanced Call Stack Demo 2003 - 2013 © Copyright Xpand IT www.xpand-it.com
  • 9. MMA & Intelitrace Debugging • Diagnose problems in deployment with Visual Studio and Microsoft Monitoring Agent • Enabling MMA: – – – • Impacts app performance – – 2003 - 2013 <ModuleList isExclusionList="false"> <Name>PublicKeyToken:B77A5C561934E089</Name> Configure witch modules to monitor <Name>PublicKeyToken:B03F5F7F11D50A3A</Name> Start monitoring (defining trace level) PS C:>Start-WebApplicationMonitoring "IIS:Test.Web" Monitor <Name>PublicKeyToken:31BF3856AD364E35</Name> "C:IntelliTraceLogs” <Name>PublicKeyToken:89845DCD8080CC91</Name> Capture Intelitrace snapshot <Name>PublicKeyToken:71E9BCE111E9429C</Name> </ModuleList> Enabled to whole application pool Captures (almost) every object value in method-calls from defined modules © Copyright Xpand IT www.xpand-it.com
  • 10. MMA & Intelitrace Debugging • Debugging from Intelitrace Log – Matching source files and symbols (.pdb) – Visual Studio 2013 ultimate – .iTrace file 2003 - 2013 © Copyright Xpand IT www.xpand-it.com
  • 11. MMA & Intelitrace Debugging • Review Performance Violation (1/3) Review recorded events and choose to “dig deeper” 2003 - 2013 © Copyright Xpand IT www.xpand-it.com
  • 12. MMA & Intelitrace Debugging • Review Performance Violation (2/3) See multiple calls to this event, review slowest ones and debug them 2003 - 2013 © Copyright Xpand IT www.xpand-it.com
  • 13. MMA & Intelitrace Debugging • Review Performance Violation (3/3) Review call stack, recorded values, step through and access Intelitrace 2003 - 2013 © Copyright Xpand IT www.xpand-it.com
  • 14. MMA & Intelitrace Debugging • Exception Data Get all exceptions recorded – and debug them 2003 - 2013 © Copyright Xpand IT www.xpand-it.com
  • 15. MMA & Intelitrace Debugging • Analysing Sharepoint unhandled exception (1/3) Get the Correlation Id 2003 - 2013 © Copyright Xpand IT www.xpand-it.com
  • 16. MMA & Intelitrace Debugging • Analysing Sharepoint unhandled exception (2/3) Go to Analysis in the iTrace file and search by correlation Id 2003 - 2013 © Copyright Xpand IT www.xpand-it.com
  • 17. MMA & Intelitrace Debugging • Analysing Sharepoint unhandled exception (3/3) Get full info in the exception, step into the intelitrace in that moment 2003 - 2013 © Copyright Xpand IT www.xpand-it.com
  • 18. Dump file analysis • When a long running app starts behaving sluggishly or crashes with OutOfMemoryException, or even the whole server/system slows down – Probably bad memory usage: • Memory leaks • Unnecessary allocation • Inefficient memory use • Better analyze the memory dump – using task manager, procdump (sysinternals) or even VS 2013 (capturing a breakpoint) 2003 - 2013 © Copyright Xpand IT www.xpand-it.com
  • 19. Dump file analysis • Analyse them directly in visual studio Demo 2003 - 2013 © Copyright Xpand IT www.xpand-it.com
  • 20. Energy Consumption (1/3) • The Visual Studio Energy Consumption profiler helps you analyze the power and energy consumption of Windows Store apps on low-power tablet devices that run all or part of the time on their own batteries. On a battery-powered device, an app that uses too much energy can cause so much customer dissatisfaction that, eventually, customers might even uninstall it. Optimizing energy use can increase your app’s adoption and use by customers. 2003 - 2013 © Copyright Xpand IT www.xpand-it.com
  • 21. Energy Consumption (2/3) • What’s measured? • Mark profiling data 2003 - 2013 © Copyright Xpand IT www.xpand-it.com
  • 22. Energy Consumption (3/3) • Configure device and collect data • Profile data 2003 - 2013 © Copyright Xpand IT www.xpand-it.com
  • 23. Q & A jorge.borralho@xpand-it.com 2003 - 2013 © Copyright Xpand IT www.xpand-it.com