Why your BPM scripts should use Download Filters
Recently JDS was given a good reminder of why VuGen’s Download Filters are an important product feature.
Someone created a BPM script to monitor the performance and availability of the JDS website.
Suddenly our website traffic looked like this on Google Analytics…

The VuGen script was requesting http://www.google-analytics.com/__utm.gif and http://www.google-analytics.com/ga.js each time it ran, which was polluting our usage statistics.
One of the key issues with BPM scripts is separating synthetic transactions from real transactions when application owners retrive usage statistics for their system. Different solutions are used depending on the type of application, and the method of statistics collection.
Here are some techniques we have used in the past:
- Use a special account number that will be excluded from reports
- Add a special SOAP header that will differentiate BPM requests from other requests
- Use a special queue for requests for BPM requests
- Change the User-Agent string that is sent with each HTTP request to identify the request as coming from a BPM
But the most common thing to do is to add a Download Filter to your VuGen script so that resources that are used to track usage (like http://www.google-analytics.com/__utm.gif) are never downloaded by the script.

Problem solved.
Related posts:
- The “is it done yet” loop Occasionally you will find that you must write some code...
- What’s New in LoadRunner 9.50? LoadRunner 9.5 was released today and, as mentioned by the...
- DNS-based load balancing for virtual users In DNS-based load balancing, a website visitor will request a...
- Unique usernames for BPM scripts Imagine that you have created a BPM script that monitors...
- VuGen scripting for BMC Remedy Action Request System 7.1 I recently created some BPM scripts for the BMC Remedy...
You can follow any responses to this entry through the RSS 2.0 feed. You can skip to the end and leave a response. Pinging is currently not allowed.
July 16th, 2009 at 10:48 am
I actually like to add download filters using the web_add_auto_filter function, rather than the script runtime settings. This allows me to put a comment in the script saying *why* the download filter is necessary.
Syntax for an “exclude” filter is:
It is actually best practice to use “include” filters instead of “exclude” filters. This allows you to whitelist acceptable hosts, rather than continue to maintain a blacklist of hosts that should not be accessed.
The syntax for an “include” filter is: