On this page:
You can correlate page and Ajax requests with business transactions. In actuality, the correlation is made between instances of page/Ajax requests (browser snapshots) and instances of business transactions (transaction snapshots).
The correlation enables you to map end-user requests with an underlying backend application. Business-transaction correlation is disabled by default.
By correlating business transactions with browser snapshots, you can identify potential issues with the backend application that are causing bad user experiences. For example, you might find that server errors or a database query is causing a slow or very slow user experience.
To correlate business transactions, you are required to do the following:
To correlate business transactions, your business application must have one of the following app server agents installed:
HttpOnly is set on these cookies, no server-side correlation information can be transmitted. Thus, make sure that your server does not set the
HttpOnly flag on any cookies prefixed with ADRUM.
If you want to securely transmit cookies, use HTTPS. The app agent sets the
secure flag if the originating base page is loaded over HTTPS.
These can be turned off, but that'd prevent correlation from working for base pages unless the customer changes the page source code to do footer injection.
When an end user requests a page from your browser app:
The Controller fetches the metrics and business transaction identifiers from the EUM server and then uses the business transaction identifiers to correlate the browser snapshot with the transaction snapshots.
You need to configure the Controller to correlate business transactions. The Controller will map the business transactions with the browser snapshots based on the process described above in How It Works.
To enable business transaction correlation:
From the Business Transaction Correlation tab, check the Enable Business Transaction Correlation check box.
You can also specify which business transactions will include or exclude correlation headers. If you do not add request match rules or request exclude rules, correlation headers will be added to all requests.
To add a request rule:
There are several ways to navigate from a browser snapshot to its correlated business transaction. The following steps show you one possible way.
To get the full real execution time for correlated business transactions, your injection method may need to write the
JS_FOOTER variable to your page. Manual injection gives the server-side agent the ability to write data only to the header of the page as it is being constructed by your web application. It is possible that complete business-transaction timing information is not available at the moment that the header data is written. Using the footer allows the server-side agent to write timing data at the footer of the page, by which time a fuller picture of business transaction timing may be available.
You can write the
JS_FOOTER data variable into the footer of a web page using the following techniques:
If you cannot add the
JS_FOOTER variable to your page, the timing shown for correlated business transactions may be the average response time for that transaction rather than the real execution time for that specific page.