Chat now with support
Chat with Support

Foglight APM for Real User Experience 5.9.9 - Administration and Configuration Guide

Getting started Configuring traffic capture
Managing Sniffers Managing Archivers Managing capture groups Managing sessionizing policies Managing monitored ports Managing monitored IP addresses Managing monitored subnets Managing identifiers for virtual addressing schemes Managing private keys Managing web services and SOAP operations
Configuring traffic analysis Configuring analyzers Capturing traffic outside the network Configuring advanced options Integrating Foglight APM with other products Maintaining and troubleshooting Appendix: Building regular expressions in Foglight Appendix: Traffic analysis processing
Understanding the traffic analysis workflow Stage 1: Run hit analysis Stage 2: Run sequence analysis Stage 3: Finalize stopped sequences Stage 4: Finalize the session Example of interdependent analyzers Online-Only Topics
Removing items from a table Defining extraction expressions Adding, copying, and editing archivers Testing archivers Configuring archiver database shard settings Adding, copying, and editing sniffers Testing sniffers Adding and editing capture groups Testing capture groups Adding and copying sessionizing policies Editing sessionizing policies Selecting session identifiers from a discovery list Adding and editing session identifier variables Organizing session identifiers Selecting user name variables from a discovery list Adding and editing username rules Selecting URL prefixes from a discovery list Adding or adding URL prefixes Selecting ports from a discovery list Adding or editing monitored ports Selecting IP addresses from a discovery list Adding or editing monitored IP addresses Looking up host names for all monitored IP addresses Associating private keys with IP addresses Selecting subnets from a discovery list Adding and editing monitored subnets Adding identifiers Editing identifiers Finding IP addresses in HTTP headers Configuring a custom HTTP header using Microsoft IIS Manager Adding and editing local private keys Adding and editing HSM private keys Exporting keys using Microsoft Management Console Adding or editing web services Importing WSDL files to define web services Managing custom fields and metrics Adding, copying, and editing custom fields Removing custom fields Editing custom metrics Removing custom metrics Managing sensitive data Adding, copying, and editing sensitive hit detail policies Adding, copying, and editing sensitive content expression policies Modifying members of pivot categories Selecting aliases from a discovery list Adding, copying, and editing domain rules Adding, copying, and editing large hit details Adding, copying, and editing URL classifiers Reviewing rules for browser category, browser, and operating system hit details Adding user-defined user agent rules Adding and editing additional parsed response types Adding and editing captured request body types Adding, copying, and editing scripts Removing scripts Referencing configuration objects in a script Testing regular expressions Syntax for test data Adding simple hit analyzers using the Setup Wizard Adding simple sequence analyzers using the Setup Wizard Adding analyzers Copying analyzers Editing analyzers Adding and editing conditions Creating a simple Boolean expression Creating a complex Boolean expression Disabling standard metrics generated by a hit analyzer Adding custom metrics Editing custom metrics Selecting pivot categories Breaking out metrics into dynamically-named topology objects Publishing metric timeslices for the Geographical Perspectives dashboard Changing SLA thresholds Adding custom field updates Editing custom field updates Adding scripts to an analyzer Editing scripts Creating new scripts on the fly Adding hit storage restrictions Editing hit storage restrictions Adding sequence events Editing sequence events Adding static page elements Editing static page elements Viewing resource files defined by static page elements Adding and editing subnet filters Exporting configurations Exporting encrypted configurations Restoring a previous configuration Importing saved configurations Importing hit analysis configurations from Foglight Experience Viewer Using the Import Configuration Wizard

Capturing traffic outside the network

Deciding when to add browser instrumentation

Web 2.0/AJAX Application — In Web 2.0 applications, the client’s browser does most of the processing for the application and also maintains most of the information about the state of the client. For example, an AJAX-based application makes asynchronous XMLHttpRequest calls to the web server, and the web server responds with fragments of content or raw data, which are then interpreted by the client-side JavaScript. To monitor the performance and health of the client’s browser, you need to instrument web pages in the application.
Mashup Web Site or Application — A mashup web site or web application combines first-party dynamic content with dynamic content from third parties, such as social media sites (for example, Twitter or Facebook) and remote advertising servers. With all this extra content outside the control of your site or application, you cannot fully understand your end users’ experience of these pages without the extra information provided by browser instrumentation.
Cloud-based Web Site or Application — Cloud environments are complex, dynamic, and elastic, which makes Sniffer deployments impractical. Browser instrumentation is currently the only way to monitor cloud-based web sites or web applications.
Content Delivery Network (CDN) — When monitored web sites or web applications use a CDN to deliver static content, a Sniffer cannot measure how long the CDN servers take to respond to a request for an individual piece of content. Browser instrumentation provides the missing timing data, which in turn enables a Sniffer to report more accurate values for page load metrics.

Introducing the instrumentation components

The instrumentation library is a JavaScript file approximately 10 KB in size. The library contains a set of APIs to collect browser event information and capture content displayed in the browser. It also implements the W3C Navigation Timing interface, described in http://www.w3.org/TR/2012/REC-navigation-timing-20121217/, to collect performance data for browsers that support this interface. For a list of the details captured by the instrumentation library, including the Navigation Timing properties used to calculate them, see “Instrumentation and navigation timing metrics” in the Foglight APM Reference Guide.
The instrumentation library loads as part of the initial page load. As the page executes, the script tracks JavaScript errors and logging data as well as the navigation timing data. The scripts assigns the header X-1EUQuestInstrumentation to instrumentation hits, batches the data into instrumentation payloads, and forwards payloads asynchronously to the instrumentation listener. If the instrumented page uses SSL, the payload is sent to the listener using SSL.

Configuring an instrumented monitoring solution

By default, the instrumentation library posts its payloads to <host_URL>/empty.txt. For example, if you instrument the web site www.dell.com, the library posts to www.dell.com/empty.txt.
IMPORTANT: You must deploy an empty file named empty.txt onto your web site so that, when the instrumentation posts data to the web site, it will not result in the Object Not Found (404) response code. Failing to do so results in lots of 404 errors being generated after you deploy the javascript instrumentation.
a
In the navigation panel, under Dashboards, click Administration > Cartridges > Components for Download.
b
Click JS Instrumentation.
c
Click Download.
2
Copy instr.js to the same location as other scripts used by your monitored web site or application.
4
Add the <script> statement shown in the following code snippet to the file, substituting in the relative path to the script in your environment. Enclose the <script> tag within the <head> tag as close to the top as possible.
IMPORTANT: For the id attribute, ensure that you specify "--foglight-script--" exactly as shown, including all dashes.
        type="text/javascript" src="<path>/instr.js" id="--foglight-script--">
6
If you are monitoring individual web pages, copy the <script> statement to the other pages.
b
Related Documents

The document was helpful.

Select Rating

I easily found the information I needed.

Select Rating