AppInternals for Exceptional Desktop App

ExApp is a SAAS app that comes with a rich client, a .NET app running on the user Windows 10 device and accessing various webservices. Users were complaining because the app was slow, freezing, flickering, crashing…  That is why I borrowed an APM agent from the DevOps team.

I did not want to instrument the SAAS webservice or monitoring the end user experience, I chose to debug the fat client application itself deeply.

AppInternals agent cannot be installed on Windows 7 or Windows 10 clients, you will get an error pop-up saying it will not work.

pic0.png

But that was not a problem. Indeed I used a special client machine where I installed the AppInternals agent.


The trick?


AppInternals agent actually runs very well on Windows Server 2012 and 2016. So, installing both the rich client and AppInternals on a Windows Server 2016 allowed me to dig into the internals of this app.


Then after just few minutes using the app. It was not difficult to conclude the main source of delay was not the network () but the desktop application code.

pic1.pngSome specific webservices were causing irregular slowness.

pic2.png


An exceptional framework was slowing everything down. The app was internally generating lot of exceptions.

pic3.png

For example a background network activity was failing due to authentication error trying to call a web service using basic authentication.

pci4.png