Working with Analytics (AVR)

AVR Lab Setup - Verify provisioning, iRules and Data Group

In this task you prep the BIG-IP for the Application Visibility and Reporting (AVR) lab. In the interest of time AVR has already been provisioned, a data group has been built and two iRules have been prepopulated on the BIG-IP.

AVR is NOT provisioned by default, but should be already be provisioned on this BIG-IP. You can verify this by going to System >> Resource Provisioning. Application Visibility and Reporting should be set to Nominal.

Q1. What resources does AVR require to be provisioned?

Go to Local Traffic > iRules > iRules List and select Data Group List from the top-bar

A Data Group named user_agents has already been created for you.

String Value
agent IE9
agent1 IE11
agent2 IE11
agent3 Chrome
agent4 Firefox
agent5 Safari
agent6 iPhone5
agent7 iPhone6
agent8 iPhone6
agent9 Android

To save time and typing errors, the iRules required for this lab have already been configured on the BIG-IP. Find the iRules below under Local Traffic > iRules > iRule List and verify the iRules exist. We use these iRules to modify traffic and give Analytics something interesting to see.

random_client_ip - randomizes the client IPs and user agents using the data group you built:

when CLIENT_ACCEPTED {
# Create a random IP address and use it to replace the client IP to simulate many clients
# going through the virtual
   snat [expr int(rand()*255)].[expr int(rand()*255)].[expr int(rand()*255)].[expr int(rand()*254)]
   virtual avr_virtual2
}
when HTTP_REQUEST {
# When the HTTP request comes in, select a random user agents and put that agent
# in the user-agent HTTP header to simulate many different user agents
   set my_index [expr int(rand()*10)]
   set user_agent [class element -value $my_index user_agents]
      HTTP::header replace user-Agent $user_agent
}

Q2. Review the iRule, what profiles are required on the virtual server?

delay_server - introduces delay into server-side traffic:

when LB_SELECTED {
# After a member has been selected by the load balancing algorithm introduce delay
# (in milliseconds) on the specified URL or server
   if {([LB::server addr] equals "10.1.20.13") and ([HTTP::uri] equals "/welcome.php")} { after 10}

   if {[LB::server addr] equals "10.1.20.13"} {after 20}
}

Q3. Review the iRule, what profiles are required on the virtual server?

Create an Analytics Profile

Create an analytics profile that will be used with a virtual server.

In the Configuration Utility, open the Local Traffic > Profiles > Analytics page, and then click Create.

Create an analytics profile using the following information, and then click Finished.

Profile Name custom_analytics
Collected Metrics

Max TPS Throughput

Page Load Time

Collected Entities

URLs

Countries

Client IP Addresses

Client Subnets

Response Codes

User Agents

Methods

Create a Web Application

Note

The avr_virtual2 destination address is the default gateway of the web servers.

Name avr_virtual2
Destination Address 10.1.20.240
Service Port 80 (HTTP)
Configuration Advanced
HTTP Profile http
Source Address Translation Auto Map
Analytics Profile custom_analytics
iRules delay_server
Default Pool www_pool

Create another virtual server using the following information, and then click Finished.

Note

Within the iRule attached to this virtual you are pointing traffic to the virtual server you created above, so avr_virtual2 had to be created first.

Name avr_virtual1
Destination Address 10.1.10.90
Service Port 80 (HTTP)
HTTP Profile http
iRules random_client_ip

Visit the Web Site to Generate AVR Data

Use a web browser to access the virtual server, and then view the Analytics statistics.

Use a new tab to access http://10.1.10.90. It is recommended you use private browsing.

Type <Ctrl>F5 several times to refresh the page. Do this for each of the next steps.

Click the Welcome link, and then click the banner at the top of the page to return to the home page.

Click the Stream Profile Example link. Click the banner at the top to return to the home page.

Click on the Multiple Stream Example link. Click the banner at the top of the page to return home.

Click the Request and Response Headers link. Click the banner at the top of the page to return home.

Close the F5 vLab Test Web Site tab.

Open the Statistics > Analytics > HTTP > Overview page.

Hint

If you don’t see anything, set your Auto Refresh to 1 minute. It may take up to 5 minutes for analytics data to load.

View the Analytics Reports

Use the Analytics page to view statistics information on the BIG-IP system.

In the Configuration Utility, refresh the Statistics > Analytics > HTTP > Overview page until you see statistics.

Once you have data set the Override time range to list box, select Last Hour.

Open the Transactions page from the top bar. Let’s review some of the various data compiled.

From the View By list box, select Pool Members.

From the View By list box, select URLs.

From the View By list box, select Response Codes.

Users are complaining of intermittent slow responses.

Open the Latency > Server Latency page, and then from the View By list box, select Pool Members.

Q1. Does a particular pool member seem to be an issue?

In the Details section, click 10.1.20.13:80, and then from the View By list box, select URLs.

Go to Transactions.

Q2. What country has the most transactions?

Q3. What are the top two User Agents?