End User Experience Analyzer is used to monitor performance of your web applications as experienced by actual end users. This is achieved by automatically injecting Java script code to your JSP pages which report back the total time it took to load the page from the time a user clicked the link, network, server processing and browser rendering times, browser type, user location etc...
With Applicare 7.3.0 version End Client Process Monitoring can be enabled for slow calls or all calls. End Client Process Monitoring provides processes running and resources utilized by each process for the end client running browser. This helps identify if the slowness is caused by some process running on End User's computer. End Client Process Monitoring is only supported on Windows and Internet Explorer (IE) end clients. End Client Process Monitoring requires permissions from the end user (or centrally configured by administrators) to allow running 'Microsoft Script Runtime'. If these permissions are not certrally configured then users are prompted on first visit to the pages with end client process monitoring enabled.
Configuration
Most important and first step is to make sure that applicare_agent/eum/beacon URL is accessible to your end users by allowing external access to applicare_agent.war application that you install on your server.
In order to configure UEM please utilize following JVM parameters.
Please note that following example assumes that 192.168.1.10 is the IP address of the server where applicare_agent.war is installed and 8080 is the port number on that server.From Applicare 6.8.6, you don't need to explicitly specify below agent parameters, the Applicare use agent URL automatically. Specify only when beacon, arc-eum.js and arc-eum-process.js is different than Applicare agent URL.
VM Argument | Example & Description |
---|---|
arceum.js | -Darceum.js=http://192.168.1.10:8080/applicare/eum/arc-eum.js |
Please utilize this parameter to specify from where the Applicare should load arc-eum.js This should be URL to applicare_agent application. | |
arceumprocess.js | -Darceumprocess.js=http://192.168.1.10:8080/applicare/eum/arc-eum-process.js |
Please utilize this parameter to specify from where the Applicare should load arc-eum-procss.js This should be URL to applicare_agent application. | |
eum.beacon | -Deum.beacon=http://192.168.1.10:8080/applicare/eum/beacon |
Please utilize this parameter to specify on which URL Applicare is listening for UEM data. This should be URL to applicare_agent application. | |
arc-nav.js | -Darc-nav.js=http://192.168.1.10:8080/applicare/eum/arc-nav.js |
If your web application is using servlets and you want to monitor them under UEM then you can utilize this parameter. By default Applicare does. |
|
uem.servlets | -Duem.servlets=true |
If your web application is using servlets and you want to monitor them under UEM then you can utilize this parameter. By default Applicare does |
Please make sure that that URL that you specify with the arceum.js & eum.beacon parameters are accessible to your end users. Additionally you may have to configure firewall rules to allow external access to these URLs.
If you specify the above parameters then Applicare will insert java-script similar to following when the end user accesses any page generated by a jsp/servlet of your application.
<script src="http://192.168.1.10:8080/applicare_agent/eum/arc-eum.js" type="text/javascript"></script>
<script type="text/javascript">
BOOMR.addVar({ "server": "AdminServer","t_backend": "4","b_name": BrowserDetect.browser,"b_ver": BrowserDetect.version,"b_os": BrowserDetect.OS });
BOOMR.init({user_ip: "192.168.1.16",beacon_url: "http://192.168.1.10:8080/applicare_agent/eum/beacon"});
</script>
Next you need to enable End User Experience Profiling aspect on your servers to automatically inject Java script code to JSP pages. This can be done by.
- Navigate to Configuration > Configure Dynamic Instrumentation page in Applicare console.
- On IntelliTrace Deployment tab, select Advanced Mode and click Configure button next to it.
- Move End User Experience Profiling aspect from left side list to Deployed Aspect list by selecting the aspect and clicking Add button.
- Click Apply button and make sure Agent is enabled for servers in IntelliTrace deployment tab.
Manual javascript Injection
If for some reason auto-instrumentation does not work or you can not use auto-instrumentation, end user monitoring can still be used by manually including appropriate scripts in your pages.
Applicare includes an API to which you can add to your page just before end "</body>" and it will inject the required javascript in the page.
For example, you could modify your application's template for manual javascript inject as follows:... existing template code ...
<%= com.arcturus.aop.shared.RUMManager.injectJS() %>
</body>
Additionally, you may want to add "<Applicare Installation Dir>/applicare-aspects.jar" to your classpath during the development process.
URL Exclusion & Inclusion
You can select a URL from HTTP Analyzer and add it to UEMURLExclusions.txt to exclude it from UEM.
Similarly, you can select a URL from HTTP Analyzer and add it to UEMURLInclusions.txt file to include it in UEM.
Analyzer
End User Experience Analyzer displays historical data related to end user performance broken down by different aspects in separate tabs. Data will be dispalyed on the Realtime Transactions tab as soon as users start accessing your application. It may take a few minutes for data on other tabs to show up.
Overview
The world map on the dashboard shows the performance breakdown for each country. Mouse over a country to see performance summary data for the country. On the right you can view top transactions by different criteria such as page count, average page load time etc... The chart below shows the performance data over the selected time period and if you click on a country in the map, the chart will display the performance data for the country as shown in the image below.
Transaction Summary
Transaction summary view displays performance statistics of transactions for the selected time period along with the time line chart at the bottom. Clicking on a transaction will update the timeline chart to display performance data for the selected transaction.
Realtime Transactions
Realtime view displays the last n number of individual transactions recorded. Along with performance stats you can view location and browser information of users accessing your application. Note: This view will not show any transactions older than a day.
In case the server on which applicare_agent.war is installed is behiend proxy, firewall or load balancing server. Please make sure that the proxy, firewall or load balancing server forwards the client requests with "X-Forwarded-For" header parameter. If this parameter is not included in the HTTP request then Applicare may show the IP address of proxy, firewall or load balancing server in End User Experience Analyzer.
If you access Realtime Transaction and double click on any URL you may encounter a message "Trace not available..."
In order to enable tracing on End User Experience,
- Go to Server Analyzer > IntelliTrace > HTTP
- Right click on the URL on which you want to enable detailed tracing and select "Add as a Key Business Transaction".
- Add the URL to Key Business Transaction. You can directly visit Business Transactions > Configure Key Business Transactions and add the URL to Business Transaction Monitoring.
- Go to Profiling > Configure Business Transactions > Transaction Monitoring.
- Enable Per-Transaction Monitoring.
- Enable Transaction Tracing.
Once you have followed the above steps please restart the agent server.
Now you can visit the UEM > End User Experience Analyzer > Realtime Transactions and double click on the URL.
If you have added the URL to Configure Business Transactions, detailed trace will be displayed as shown in the following image.
Browser and Server Views
Browsers and Servers tabs are similar to Transaction Summary view but displays performance data for each client browser type and by the backend servers processing transactions.
Comments
0 comments
Please sign in to leave a comment.