First you must have the correct license before any of what I am about to share with you will work. Reach out to your AppDynamics rep to ensure you have the licenses needed to turn on this feature.
a. There are three ways to instrument your application with Browser End User Monitoring.
i. Automatic - This way is by far the easiest way but your application must meet the following requirements:
1. If you are using a Java or .Net app agent on the server-side, and your application is running in an environment that supports the Apache Jasper JSP compiler (for Java) or ASP.NET or ASPX (for .NET), you may be able to use automatic injection, where the server-side app agent completely manages injecting the code at runtime.This however is not always a garuantee.
2. If you have the above you can try to instrument it automatically by following the below steps:
a. In the left navigation menu, select Configuration > Instrumentation > End User Monitoring.
b. Click the Web Javascript Instrumentation tab.
c. Scroll down to the Advanced panel and expand it.
d. Expand Advanced Instrumentation of your HTML Pages if it is closed.
e. Click the Automatic JavaScript Injection tab.
f. In the Automatic JavaScript Injection tab, check the Enable Automatic Injection of JavaScript.
g. Click OK to confirm your action.
To perform automatic injection for .NET, the AppDynamics app agent detects the element in the aspx page. This should be part of either the master page or the aspx page.
i. The
element must have the 'runat=''server''' attribute set for automatic injection to work.
k. After you have enabled automatic injection:
i. You must specify the server-side business transactions for which automatic JavaScript injection is enabled.
ii. You can limit which pages to inject by creating custom match and exclude rules for automatic injection. If you do not configure these rules, by default AppDynamics injects all pages visited by the enabled business transactions.
Assisted - This way is a bit more involved as you must manually put in classes and methods that relate to your application. It is for Java only.
1. To configure, go to the same advanced tab as above only choose the ''Configure JavaScript Injection'' tab and follow the below instructions:
a. In the Configure JavaScript Injection tab, expand Create Injection Rules.
b. Click the plus icon.
c. The Create Manual Injection Rule screen is displayed.
d. Click the Where to Inject JavaScript tab.
e. In the Name field, enter a name for the rule and check Enable to enable it.
f. In the Class and Method to intercept section, define match conditions for the class and method that write to the output stream in your application. This is the class that server-side agent intercepts for injection.
i. If the write method is overloaded
1. check the Is this Method Overloaded? check box
2. click Add Parameter
3. add the parameters that define the method
g. In the Pointer to the writer section, select how to obtain a reference to the writer object from the selected method.
h. In the Injection options section, specify:
i. the output stream write method the server-side agent should use to inject the JavaScript agent
ii. when the injection should occur: when the method begins or when the method ends
iii. which part of the script should be injected - the header or the footer
iv. optional prefix to output before writing the header or footer, such as
iii. Manual - This way is supported by all technology, but is the most time consuming.
1. To manually inject your application you must:
a. Download the JavaScript agent to your local environment
b. Manually configure each page you wish to instrument to find the script where you stored it so that it can be executed as the page is constructed by the browser.
c. To configure the Manual injection go to the same page as above an