Troubleshoot MV3-related issues in browser monitors
The Dynatrace Synthetic Recorder, which is a Google Chrome browser extension, is transitioning to Manifest Version 3 (MV3), which is the latest iteration of the Chrome extension platform. As a result of this required transition, there are changes in the operation of the Synthetic Recorder that might require workarounds in your browser monitor configurations or application code.
Missing XHR actions for third-party iframes
If you've enabled Capture performance metrics for pages loaded in frames in Advanced setup of browser monitor settings, you might notice that XHR actions for third-party iframes (iframes loading domains other than the main domain) do not show up in the waterfall.
In transitioning the Dynatrace Synthetic Recorder to MV3, JavaScript injection is now based on the Fetch API protocol.
To capture XHR actions from third-party iframes, enable disable-site-isolation-trials
in chromiumStartupFlags
in browser monitor script mode—see the code snippet below. (The default value of disable-site-isolation-trials
is false
.) Read more about this flag in Chromium documentation.
When you enable the disable-site-isolation-trials
flag, be sure not to overwrite any other flags in chromiumStartupFlags
(for example, disable-web-security
or ignore-certificate-errors
).
{
"configuration": {
"chromiumStartupFlags": {
"disable-site-isolation-trials": true
},
Limitations on the length of regular expressions
The length of regular expressions is limited in MV3. As a result, the length of URLs or match patterns you specify in browser monitor configuration to Block specific requests cannot exceed 90 characters. If your current string exceeds 90 characters:
- The Block specific requests setting is not applied and needs to be fixed to meet the 90-character limit.
- You will not be able to save certain changes to browser monitor configuration such as adding a request or validation. You can, however, change monitor name, frequency, outage handling, and thresholds. The Block specific requests setting needs to be fixed before you can save all changes.
Read more about this setting in Configure browser monitors.
window.dispatchEvent
and window.addEventListener
functions in application code
One of the consequences of MV3 is that if your application code overrides the window.dispatchEvent
or window.addEventListener
functions, you might observe missing resources or actions in waterfall data, missing results for JavaScript events, or monitor failure.
If you observe issues with browser monitor results that might be attributable to overriding window.dispatchEvent
or window.addEventListener
functions, contact Dynatrace Support.
401 failures on challenge-response pages
Since the transition to MV3, browser monitors (clickpaths and single-URL monitors) might fail with a 401 status code on challenge-response pages where it was previously possible to bypass such challenges.
-
For such pages, you first need to set up HTTP authentication in browser monitor settings.
- In browser clickpaths, Enable HTTP authentication and provide credentials in the Navigate event.
- In single-URL browser monitors, select Advanced setup in edit mode and Enable global login authentication. Then select HTTP authentication and provide credentials.
Read more in Supported authentication methods in Synthetic Monitoring and Configure browser monitors.
-
Additionally, you might need to ignore the 401 status code in browser monitor settings in edit mode. Select Advanced setup and turn on Ignore specific status codes.
Users still on Dynatrace version 1.257 and Dynatrace version 1.259 might experience an additional symptom of the post-MV3 behavior of challenge-response pages. If you've turned on Automatic retry on error in Outage handling settings, a 401 page failure might be successful upon retry. However, screenshots for such successful retries are not available.