Performance Profiling

Content

Introduction

The Performance Profiling feature enables testing of component performance during actions within the D365 systems. Individual components can be analysed for their runtime performance to identify any parts that may slow down the system.

Please ensure that you have configured your integrations: Integrations and also the code signing has to be configured before the start of the Performance Profiling: Performance Profiling | Code Signing

image-20240327-131501.png

Execute Performance Tracing

Step 1: In order to execute Performance Tracing, select a component and press the start button.

image-20240326-224606.png

Step 2: After a few seconds, KPI will start listening.

image-20240307-103130.png

Step 3: Now trigger any actions that should be traced. For example - create an account.

image-20240307-103326.png

Step 4: KPI will now show results of the tracing. The results include every code line executed, bottlenecks in the code base (highlighted by bold font), time of execution and execution statistics.

image-20240307-144621.png

Step 5: Click on a single entry point to view the detailed stack.

image-20240307-144736.png

The source code of a selected line can be viewed by clicking on the image-20240312-070905.png icon.

Step 6: Open the execution statistics (image-20240307-144920.png) to view the details of single entry points.

image-20240307-144848.png

Step 7: Click on pause to stop tracing.

image-20240307-145110.png

Code Signing

In order to be able to execute the Performance Profiling, a code signing certificate must be uploaded to KPI. To do that, the button “Upload Code Signing“ must be clicked. A file selection dialog will open.

image-20240325-063527.png

Select the certificate that is used to sign the assemblies.

The used certificate types are SNK files (*.snk). Based on the signing algorithm used when creating the assembly files, the type of the certificate might change.

It is important that the certificate uploaded matches the certificate of the assemblies analyzed by KPI. If there is a mismatch, an error will occur.

Clear Traces

The clear traces button clears the history of all traced lines in the Performance Profiling section.

image-20240327-131739.png

Performance Filter

image-20240327-132244.png

The option “Skip fast calls“ excludes operations that were faster than 100 milliseconds in execution time.

The option “Own code only“ excludes lines of code that are not directly written as custom code in a plugin.

The option “Collect arguments“ enables KPI to collect execution arguments and shows them at each line.

image-20240404-102051.png

The “Custom filter“ lets the user narrow down which lines should be shown during the tracing.

image-20240327-132315.png

Need help? Contact support