To instrument a website, two script tags have to be injected: an inline tag and a tag with a
defer script tag attribute (see MDN Documentation for details).
Asynchronously loaded scripts do not block page loads, but there are a few drawbacks. Since the Agent cannot redefine any library variables if they already have been initialized (like jQuery or AngularJS), it is strictly recommended that
The following is a sample tag combination automatically injected by the Agent as first of script tags in
<head> at delivery of the web page ‐ with settings according to the configuration in System Profile > User Experience:
The first tag (without
src-attribute) is the agent's initialization code. It must be delivered inline and is executed synchronously. It performs early-wrapping of native browser functions and third party libraries if available to ensure capturing can be done reliably.
7000000001289is the AppMon Agent version (major, minor, revision, buildnumber).
Each part of the version string consists of four characters, trimming leading zeroes, such that it is read like this:
7 0000 0000 1289, which translates to
bdpxis the feature hash, and shows information captured by the Agent, such as bandwidth, dojo, perceived render time and basic XHR detection.
To disable injection:
- Right click your system profile and select Edit System Profile > Agent group > Sensor Configuration item > User Experience, and click Properties.
- In the URI-specific injection behavior area, click +.
- Specify the file or location to be excluded from the injection, in the Condition and URI pattern fields. See User Experience sensor properties for parameters description.
- From the Injection Rule list, select do not inject on this agent, to allow agents from other groups to inject here or do not inject on this and subsequent agents, to completely disable agent injection.
If the preferable auto-injection is not possible you need to insert the initialization tag manually at design time as first script tag in
<head>. Since the initialization tag and it's contained code varies depending on your application settings, it can easily be retrieved by using the Server REST Interfaces API using
defer attribute) and updates it's configuration if required. It is not necessary to update the initialization tag every time you change the UEM configuration, though adjustments are applied faster for new visitors if you do so.