0% found this document useful (0 votes)
62 views14 pages

Power Apps - Troubleshooting Performance Issues - Part 4 - by Mustaque Ehiya - Medium

Uploaded by

plrmemories
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
62 views14 pages

Power Apps - Troubleshooting Performance Issues - Part 4 - by Mustaque Ehiya - Medium

Uploaded by

plrmemories
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

12/2/24, 9:01 PM Power Apps — Troubleshooting Performance Issues — Part 4 | by Mustaque Ehiya | Medium

Open in app

Search

Power Apps — Troubleshooting Performance


Issues — Part 4
Mustaque Ehiya
7 min read · Jun 29, 2024

Listen Share More

In this article, we will discuss network-related troubleshooting steps.

Network Basic Analysis


Verify network capacity
The primary characteristics of a network that affect the performance of customer
engagement apps are bandwidth and latency.

Bandwidth is the width or capacity of a specific communications channel.

Latency is the time required for a signal to travel from one point on a network to
another and is a fixed cost between two points.

One of the main causes of poor performance of Customer Engagement apps is the
latency of the network over which the clients connect to the organization. Lower
latencies (measured in milliseconds) generally provide better levels of
performance.

Notice that, even if the latency of a network connection is low, bandwidth can
become a performance degradation factor if there are many resources sharing the
network connection, for example, to download large files or send and receive email.
How to check latency
Customer Engagement apps include a basic diagnostic tool that analyzes the client-
to-organization connectivity and produces a report.

To run the Diagnostics tool, follow these steps.

https://medium.com/@mustaque.plr/power-apps-troubleshooting-performance-issues-part-4-b5e190782f45 1/14
12/2/24, 9:01 PM Power Apps — Troubleshooting Performance Issues — Part 4 | by Mustaque Ehiya | Medium

1. On the user’s computer or device, start a web browser, and sign in to an


organization.

2. Enter the following URL,


https://myorg.crm.dynamics.com/tools/diagnostics/diag.aspx, where
myorg.crm.dynamics.com is the URL of your organization.

3. Click Run and analyze the output

The report displays a table with test and benchmark information. Of particular
importance is the Latency Test row value. This value is an average of twenty
individual test runs. Generally, the lower the number, the better the performance of
the client. Although users may receive a satisfactory experience by using
connections with more latency, for best application performance we recommend
that the value be 150 ms (milliseconds) or less.

Slow performance because of geographical distance


The geographical location of the environment and the distance of the data source
from users can affect performance.

https://medium.com/@mustaque.plr/power-apps-troubleshooting-performance-issues-part-4-b5e190782f45 2/14
12/2/24, 9:01 PM Power Apps — Troubleshooting Performance Issues — Part 4 | by Mustaque Ehiya | Medium

Microsoft recommends that all the environments be located close to users. Though
Power Apps uses Azure Content Delivery Network for content, data calls still get the
data from the data source. A data source located in another geographical location
might adversely affect the performance of the app.

Excessive geographical distance affects performance in different ways, such as


latency, reduced throughput, lower bandwidth, or packet loss.
Proxy server
Sometimes, the proxy servers you rely on can cause occasional slowdowns. These
proxies may add a minor lag to some of the HTTP requests your browser makes. As
a result, this lag can create unpredictable errors, depending on which files’ transfer
was impacted.

Network Deep Guidance


Analyze network traces to check the slowness between the browser and the web server
You can check the network trace file to see if the following pattern can be observed
or not.

You can find the specific request/ response is slow / the server is slow to respond
/ Slow Time To First Byte (TTFB).
For example, if your operation takes approximately one to two minutes to
complete, and you observe that a specific related request at the web server is
also taking a similar amount of time, that particular request is likely relevant to
the slowness you are experiencing. Network issues guide — Microsoft Edge
Development | Microsoft Learn provides insights on how to interpret the data. It
is essential to recognize that while the article often discusses network slowness,
the chance that network issues are causing the overall slowness for web
applications is relatively small in this 21st century. Before immediately diving
into network troubleshooting, always follow the recommended guidance.

You cannot find the specific request/response is slow


We will discuss this pattern in the next Step. Once you’ve pinpointed the specific
HTTP request contributing to the slowness, you can analyze its payload for
clues. For instance, if a batch request sends multiple case IDs for the ‘assign’
operation, server slowness might result from repeated assign operations across
numerous records. Alternatively, if the web API fetching specific records (e.g.,
for a grid) is slow, it could be due to query performance related to the specific
view you’re using. Consider adjusting the number of records assigned in one go
https://medium.com/@mustaque.plr/power-apps-troubleshooting-performance-issues-part-4-b5e190782f45 3/14
12/2/24, 9:01 PM Power Apps — Troubleshooting Performance Issues — Part 4 | by Mustaque Ehiya | Medium

or exploring different view definitions (including out-of-the-box views) to gain


further insights into the issue.

Analyze network traces further, and then gather further evidence


Below, we’ll discuss common patterns that could account for slowness (or lack
thereof). Keep in mind that a non-reproducible network trace file remains valuable
and essential. By comparing the successful path in the data that works with the
unsuccessful network trace files, you can easily identify any discrepancies.

Not performance issue — failure at the server side


When user interfaces display the “loading…” animation and wait for successful
data from the server (but it does not receive the expected data), they sometimes
continue showing the animation indefinitely or until they reach the client-side
timeout. Although these situations may appear to be performance issues, it’s
essential to consider other factors. For instance, privilege errors in the HTTP
response payload could be the root cause. Rather than solely pursuing
performance-related investigations, pay attention to error messages captured in
the network trace.

Not performance issue — failure on the client side


Similar to the previous scenario, the server correctly responded with the
expected data. However, on the client side, handling of completion events
encountered errors (or was missed), leading to persistent loading screens or
blank white pages (or panes). To troubleshoot, examine the Script Console and
ensure that relevant errors are not being displayed. Capture a browser trace for
troubleshooting — Azure portal | Microsoft Learn can be helpful. Since the
Console often logs multiple errors, comparing reproducible and non-
reproducible console logs can provide valuable insights. Also if your screen has
any customizations disabling them by Troubleshoot form issues in model-driven
apps (model-driven apps) — Power Apps | Microsoft Learn may be needed to
make sure. Intermittent client script failures investigated as a performance
issue, sometimes happen and often take a long time until the real issue is
isolated.

Caching issue on the client side


When loading the top landing page and dashboard pages, which often consist of
multiple panes, the browser must concurrently load numerous script and style
files. Once these files are cached on the client side, loading speed improves.

https://medium.com/@mustaque.plr/power-apps-troubleshooting-performance-issues-part-4-b5e190782f45 4/14
12/2/24, 9:01 PM Power Apps — Troubleshooting Performance Issues — Part 4 | by Mustaque Ehiya | Medium

However, during the initial load (when files are not yet cached), it is
intentionally slower. If you capture a network trace file with the “Disable Client
Cache” option, you will consistently encounter this issue. If you are addressing
initial loading issues for a rich dashboard page or the top landing page, take this
into account. Additionally, if you observe many “Stalled” requests that take a
long time, check the concurrent requests limit (Network issues guide —
Microsoft Edge Development | Microsoft Learn please also check the HTTP
protocol version as well). While a brief period of stalling during initial loading is
expected, it should not result in visible slowness for the client.

Caching issue at the server side


When you encounter multiple GetClientMetadata calls that take longer than
usual, you may be the first user to connect through a specific web server for
Dynamics CE. In this scenario, the web server needs to load metadata (such as a
list of tables and columns) from the database and cache it in memory for your
environment. While this cost is typically negligible when many users are sharing
the same environment, it becomes more noticeable if you’re the sole user of
your development environment or when someone publishes customizations.
This phenomenon, often referred to as ‘cold load,’ may occur more frequently in
such cases.

Client scripting, rendering, memory pressure, etc.


When you encounter a blank gap in the network trace waterfall chart —
meaning the browser isn’t sending requests or receiving responses, yet you’re
still waiting for your operation to complete — it’s crucial to identify why the
browser or client is causing the delay. To do this, follow the steps outlined in
Capture a browser trace for troubleshooting — Azure portal | Microsoft Learn to
capture a browser performance trace. This trace will provide insights into what
the browser is busy with, such as rendering large widgets or executing
continuous scripts. Keep in mind that browser performance traces are
significantly heavier than network traces. To avoid overwhelming exports
(which could cause the browser to hang), capture the trace for the shortest
possible period while reproducing the issue.

Network (Bandwidth or Latency)


When comparing network trace waterfall charts between reproducible and non-
reproducible scenarios, they appear quite similar. However, in slow (repro)
scenarios, the charts gradually stretch out, indicating prolonged loading times.

https://medium.com/@mustaque.plr/power-apps-troubleshooting-performance-issues-part-4-b5e190782f45 5/14
12/2/24, 9:01 PM Power Apps — Troubleshooting Performance Issues — Part 4 | by Mustaque Ehiya | Medium

This behavior can be attributed to either network bandwidth or latency issues.


Specifically, Latency Issue: The gap between requests increases, Bandwidth
Issue: Downloading takes longer. To troubleshoot, consider testing the issue on
an alternative network, such as switching to a mobile phone network, to
determine if the problem can be reproduced. Also using the Network
diagnostics pages (such as Dynamics 365 Diagnostics Tool or Azure Latency Test)
can be useful. Microsoft's recommendation is to not jump into the network
investigations without checking other conditions first.

Proxy server
At times, the proxy servers you use can introduce intermittent slowness. These
proxies might slightly delay a small percentage of the HTTP requests your
browser sends. Consequently, this delay can lead to mysterious glitches,
depending on which files’ transfer was affected.

The server is slow to respond to many requests


While specific slow HTTP responses may not be evident, slowness can
accumulate. Consider this: if hundreds of requests are required to complete a
single operation, even a 100ms delay per request can result in noticeable delays.
To identify the root cause, closely analyze the differences between reproducible
and non-reproducible network traces.

Please check the below links for this blog series.

Power Platform Apps— Troubleshooting Performance Issues —


Part 1
When you are troubleshooting performance issues, it’s important to
look at the big picture. That way, you can figure…
medium.com

Power Apps — Troubleshooting Performance Issues — Part 2


In this article, we continue our exploration of other areas that might
impact Power Apps performance issues. In…
medium.com

Power Apps — Troubleshooting Performance Issues — Part 3


https://medium.com/@mustaque.plr/power-apps-troubleshooting-performance-issues-part-4-b5e190782f45 6/14
12/2/24, 9:01 PM Power Apps — Troubleshooting Performance Issues — Part 4 | by Mustaque Ehiya | Medium

In this blog, we will explore performance troubleshooting related to SQL, FetchXml, OData,
and SDK. We will discuss…
medium.com

Power Apps Performance Monitoring Troubleshooting Optimization

Edit profile

Written by Mustaque Ehiya


23 Followers · 17 Following

Senior T-Shaped Professional, Passionate learner, Power Platform Architect, Dynamics 365 CRM, Program
Management, Agile Delivery, EPMO & Digital Transformation.

No responses yet

What are your thoughts?

Respond

More from Mustaque Ehiya

https://medium.com/@mustaque.plr/power-apps-troubleshooting-performance-issues-part-4-b5e190782f45 7/14
12/2/24, 9:01 PM Power Apps — Troubleshooting Performance Issues — Part 4 | by Mustaque Ehiya | Medium

Mustaque Ehiya

Power Automate — “Your flow is running too many actions”


Power Platform request limits are designed to ensure service levels, availability, and quality
across the platform. These limits vary…

Jun 29

Mustaque Ehiya

Power Platform Apps— Troubleshooting Performance Issues — Part 1


When you are troubleshooting performance issues, it’s important to look at the big picture.
That way, you can figure out where the problem…

https://medium.com/@mustaque.plr/power-apps-troubleshooting-performance-issues-part-4-b5e190782f45 8/14
12/2/24, 9:01 PM Power Apps — Troubleshooting Performance Issues — Part 4 | by Mustaque Ehiya | Medium

Jun 29 2

Mustaque Ehiya

Power Automate — “In-App” Context


“In-app context” in Power Automate refers to the scenario where flows are associated with and
run within the context of a Power Apps…

Jun 22

Mustaque Ehiya

https://medium.com/@mustaque.plr/power-apps-troubleshooting-performance-issues-part-4-b5e190782f45 9/14
12/2/24, 9:01 PM Power Apps — Troubleshooting Performance Issues — Part 4 | by Mustaque Ehiya | Medium

Dynamics 365 — Managed Environments


Managing Power Platform environments effectively is crucial for maintaining a healthy and
efficient application lifecycle.

Jun 22

See all from Mustaque Ehiya

Recommended from Medium

Cristina Varas Menadas

Creating Reports and Documents with APEX Office Print in Oracle APEX
APEX is an incredibly versatile platform for building low-code applications, but one feature that
really elevates its capabilities is the…

Oct 15 10

https://medium.com/@mustaque.plr/power-apps-troubleshooting-performance-issues-part-4-b5e190782f45 10/14
12/2/24, 9:01 PM Power Apps — Troubleshooting Performance Issues — Part 4 | by Mustaque Ehiya | Medium

In Stackademic by Crafting-Code

I Stopped Using Kubernetes. Our DevOps Team Is Happier Than Ever


Why Letting Go of Kubernetes Worked for Us

Nov 19 3.4K 112

Lists

Natural Language Processing


1841 stories · 1463 saves

https://medium.com/@mustaque.plr/power-apps-troubleshooting-performance-issues-part-4-b5e190782f45 11/14
12/2/24, 9:01 PM Power Apps — Troubleshooting Performance Issues — Part 4 | by Mustaque Ehiya | Medium

airdrop & testnet guide for max profit

Vana . Installing a node


# Prepare enviroment

Nov 13 9 2

In DataDrivenInvestor by Austin Starks

I used OpenAI’s o1 model to develop a trading strategy. It is DESTROYING


the market
It literally took one try. I was shocked.

https://medium.com/@mustaque.plr/power-apps-troubleshooting-performance-issues-part-4-b5e190782f45 12/14
12/2/24, 9:01 PM Power Apps — Troubleshooting Performance Issues — Part 4 | by Mustaque Ehiya | Medium

Sep 16 6.8K 174

Sachinthana Buddhika

Introduction to Microsoft Power Platform


The Microsoft Power Platform helps automate processes, build solutions, analyze data, and
create virtual agents with minimal coding.

Aug 5

Harendra

How I Am Using a Lifetime 100% Free Server


https://medium.com/@mustaque.plr/power-apps-troubleshooting-performance-issues-part-4-b5e190782f45 13/14
12/2/24, 9:01 PM Power Apps — Troubleshooting Performance Issues — Part 4 | by Mustaque Ehiya | Medium

Get a server with 24 GB RAM + 4 CPU + 200 GB Storage + Always Free

Oct 26 6.1K 86

See more recommendations

https://medium.com/@mustaque.plr/power-apps-troubleshooting-performance-issues-part-4-b5e190782f45 14/14

You might also like