Set up the RUM browser extension

The RUM browser extension provides a means of gathering Real User Monitoring data from the SaaS-licensed 3rd-party applications that are critical to the success of your business (for example, Office 365, Workday, Concur, Google Apps, Zendesk, and Confluence) for which you don't have access to the underlying application servers or HTML page source.

When to use the RUM browser extension

Typically, the easiest way to gather RUM data for your application is to install OneAgent on your application servers—full-stack monitoring, which includes Real User Monitoring, is then enabled by default, with no additional configuration required. If you don't have access to your application servers, you can alternatively use the agentless RUM approach. With agentless RUM, you manually modify the HTML of each of your application's pages to include a pre-configured JavaScript tag (for example, via templates or a tag manager).

If neither the OneAgent full-stack monitoring approach or the agentless RUM approach is feasible in your environment (for example, because you don't have access to your application servers and you can't manually inject the RUM JavaScript tag into the HTML of each of your application's pages), try the RUM browser extension.

The RUM browser extension can also be used to enhance Session Replay playback, especially when:

  • Font and stylesheet resources are loaded from HTTPS origins
  • Resources are loaded from HTTP origins

Note: This enhancement is available only on the Google Chrome browser.

Set up the RUM browser extension

To set up the RUM browser extension

Select Deploy DESK from the navigation menu.

Click the Monitor via browser extension button in the "No access to your host?" section.

Click the Set up monitoring button.

Install the DESK browser extension for Google Chrome or Microsoft Edge.

  • Click the Copy button to copy the configuration URL.
  • Click the DESK icon (grayed out) in the browser toolbar to open the extension.
  • Paste in the copied URL and click the Connect applications button.
  • If the extension successfully fetches the configuration, you'll see the following message: Applications successfully connected

Switch back to DESK and type a Name for your application.

Define the URL injection pattern. This is a regex pattern that the extension applies to the current URL. When the pattern matches, the extension injects the DESK JavaScript tag and begins gathering RUM data.

Click Create application.

Open the extension again and click the Connect applications button to ensure that you've loaded the latest configuration.

Open a new browser tab and visit the configured application. You'll now see that the DESK icon is displayed in full color. This means that the extension has injected the JavaScript tag successfully and monitoring of the page is underway. If you switch back to DESK, you'll see the first user actions coming in. Click View application to view the application's overview page.

Note: For DESK Managed deployments, it is additionally required to install a Cluster ActiveGate.

URL pattern matching

This pattern is a regular expression. It defines when the extension should inject the JavaScript tag into the pages of the configured application. The configured regex is applied to the current URL.

For example if you open Outlook 365 in your browser, you'll see a URL similar to https://outlook.office.com/owa/?realm=mycompany.com&exsvurl=1&ll-cc=1033&modurl=0 If you define the following URL pattern: outlook\.office\.com the regex will match and the extension will gather RUM data for this page. Note that this same regex pattern is not a match for the Office 365 homepage, https://www.office.com/?auth=2&home=1.

There are several online tools available to test your regular expressions (for example, Regex101).

The URL pattern can be modified any time via application-level settings (Application settings > Setup).

Configuration endpoint

There is an API endpoint used by the extension to fetch the current list of configured applications. The extension automatically fetches the latest configuration every 10 minutes and on each browser. You can access your configuration endpoint via application-level settings (Application settings > Setup), or you can select Deploy DESK from the navigation menu and click the Monitor via browser extension button.

Test your configuration

If you've download the extension via the DESK UI, the extension will be set to Admin mode. Admin mode enables you to edit the configuration endpoint by clicking the DESK icon in your browser toolbar or application-level settings (Application settings > Setup). This mode is intended for DESK admins who want to test the extension and configuration before deploying the extension company-wide.

Click either the Connect applications button or the Fetch configuration button to immediately fetch the latest application configurations from your DESK environment.

Deploy the RUM browser extension

After verifying your configuration, you likely want to deploy the extension, either company-wide or for a specific group of users.

Google Chrome

To deploy the extension

  • The extension must be added to Chrome's ExtensionInstallForcelist policy.
  • The following two extension policies must be set. (see Chrome policy doc)
    • adminMode = false
    • fetchUrl = https://{your-environment-id}.desk.com/api/v1/browserextension/config?Api-Token={your-token} (see configuration endpoint)

For Windows the best option is to use Windows group policies to set these policies.

Example of required registry entries

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\ExtensionInstallForcelist]
"1" = "fklgmciohehgadlafhljjhgdojfjihhk;https://clients2.google.com/service/update2/crx"

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\3rdparty\extensions\fklgmciohehgadlafhljjhgdojfjihhk\policy]
"fetchUrl"="https://{your-environment-id}.live.desk.com/api/v1/browserextension/config?Api-Token={your-token}"
"adminMode"=dword:00000000

If you want to deploy the extension on Linux or Mac, have a look at the Google Chrome documentation.

Verify your deployment

You can verify a successful deployment of the extension by opening the chrome://extensions page in Chrome. The DESK extension should be listed there. You'll also notice a small icon on the right (instead of the recycle bin) which indicates that the extension was installed via the ExtensionInstallForcelist policy.

To verify the extension is configured correctly, open the page chrome://policy. Here you should see two entries for the policies adminMode and fetchUrl under DESK Real User Monitoring extension. Verify that they are set to the intended values.

Now visit one of the applications you're monitoring. If everything works, the DESK icon in your browser toolbar will be displayed in full color and Real User Monitoring data will be captured. If the icon remains in a grayed out state, verify your configured URL pattern. If the icon is displayed in color, but DESK is not capturing RUM data, continue your troubleshooting.

Microsoft Edge

Edge doesn't provide a mechanism for rolling out an extension company-wide with a pre-configured configuration. Based on the public roadmap provided by Microsoft, it appears that the required "management" class is under consideration.