Monitoring Ubuntu Linux from LoadRunner (RSTAT)

Over the years I’ve used RSTAT to monitor the performance of Linux servers during performance tests many times. Historically I’ve asked Linux admins to enable RSTAT for me but over the last year or two I’ve incorporated various Linux machines into my test and demo environment so I’ve had to do this myself.

I’m primarily a Microsoft specialist so I always seem to rely on Google searches and some trial and error to resolve problems that I encounter with Linux and this weekend was no exception. I spotted a FaceBook post from Scott Moore describing problems that he was having with LoadRunner and RSTAT so I decided to see if I could help him.

2016-11-15-08_16_07-scott-moore

I installed RSTAT on my Ubuntu test machine at home and immediately saw the dreaded error message “Error while creating the RPC client. Ensure that the machine can be connected and that it runs the rstat daemon (use rpcinfo utility for this verification).”

Whatever I tried, I could’t get RSTAT to start. After some ‘Googling’, I found a number of posts in various places which helped me to resolve this problem.

A post on StackExchange (related to NFS issues) told me that rpcbind may have a dependency on a package called nfs-common. I installed this “just in case”. The same post told me that to start STATD (which I think is related to RSTAT) automatically at boot, I needed to add “NEED_STATD=yes” to the file “/etc/default/nfs-common”.

A  post on GadgetWiz.com told me that I should edit my /etc/hosts.allow file to ensure that the local host could make rstatd requests.

After restarting my Ubuntu PC, I checked that RSTATD was running using the commands “rsysinfo localhost” and “rup localhost”. I was pleased to see that after making these changes, it was possible to monitor my Ubuntu machine using LoadRunner.

 

lr_ubuntu2

I repeated my test on a new Ubuntu 16.04 LTS machine which I monitored using LoadRunner 12.53. A list of the commands that I used is below:

Install rstatd and related components:

sudo apt-get install rstatd rstat-client nfs-common

Add a line to /etc/hosts.allow to allow certain hosts to make rstatd requests:

rpc.rstatd: localhost

Added a line to /etc/default/nfs-common to start STATD automatically:

NEED_STATD=yes

These commands confirm that RSTATD is running:

rpcinfo -p localhost 
rsysinfo localhost
rup localhost

Adding JavaScript functions to LoadRunner

After reading Boris Kozorovitzky’s blog article, “How to use JavaScript in your HP LoadRunner scripts”, I’ve been inspired to experiment with LoadRunner 12.

Historically, most LoadRunner functions have been written in C but many performance testers (me included) aren’t particularly fond of C and prefer to use more up to date languages. I was already aware that there are some great JavaScript libraries out there which can extend the functionality of LoadRunner, but I hadn’t tried them until now.

Boris’ article describes how to integrate JavaScript code into your C-based scripts. Following his guidance I developed a script which uses the DateJS function for date calculations. I’m impressed with the flexibility of DateJS and the extra capabilities that it offers over the standard LoadRunner date/time functions.

To incorporate the DateJS functionality into my script I did the following:

  • Turned on the “Enable running JavaScript code” function.
    Run-Time Settings > Internet Protocol > Preferences > Set advanced options > Options
  • Added my date.js code into the script using Solution Explorer.
    Right-click “Extra Files”node in Solution Explorer
    then choosing the option to “Add files to script”
  • Adding JS functions to the script is then achieved by using the LoadRunner web_js_run function.

    e.g.

    JavaScript example in LoadRunner
    JavaScript example in LoadRunner

 

I added my sample script to my GitHub repository so that other people can see just how easy this is and potentially benefit from the new date/time functions in this sample LoadRunner script.

You can download the script here: https://github.com/richardbishop/LoadRunnerSamples/tree/master/DateJS

This article originally published on the Trust IV blog.

Imitation is the sincerest form of flattery

 

Plagiarism
Plagiarism

 

I’ve heard this phrase before, but it’s never applied to me until now. This afternoon I was searching for a snippet of LoadRunner information when I came across a LoadRunner blog that I hadn’t seen before. I read a couple of articles when one in particular caught my eye. The website http://easyloadrunner.blogspot.co.uk by Raviteja Gorentla had one article in particular that interested me.

Article 1
The article “New Release of LoadRunner 12 version” describes in detail how the author met HP at the Discover conference in Barcelona and worked with them on the beta evaluation before it was released. This all sounded very familiar, so I looked at my own article, “First Look at LoadRunner 12” on the Trust IV blog. The text was identical. The plagiarist hadn’t even had the decency to cite the original author (me) or include a link to my site.

Article 2
I did a quick trawl of his website and found numerous other articles, some of which seemed familiar. For example “How to use JavaScript in your HP LoadRunner scripts” is a straight copy of Malcolm Isaac’s article from the HP LoadRunner and Performance Center blog.

Article 3
I looked a little further and the article “Sequential Random Unique Each iteration, Each occurrence in Load Runner” was taken from Sindu Bindu’s website and the article entitled “LOADRUNNER VUGEN PARAMETERIZATION”. Even the images were taken from the original article because the screenshots showed a distinctive purple colour on the task bar.

Article 4
The next page that I looked at was “Action files in LoadRunner”, a very short article, describing the purpose of the three commonly used sections in a LoadRunner script. This also looked as if it had been copied from Sindu Bindu’s website. “Action files in Loadrunner”.  This same content was also duplicated on three separate scribd pages.

So far all the articles that I’d seen had been taken from other people’s websites. No original source or author was ever cited, but Raviteja had thoughtfully put a copyright statement at the bottom of his pages to protect ‘his’ content from people like him.

Sadly Raviteja’s efforts were in vain. Three other “copy cats” appeared to have reproduced his content on their scribd pages. The “Action Files in LoadRunner” document is also reproduced in:

So now you know why it’s so hard to “Google” for the correct answer to a performance testing problem. Hordes of offshore workers are ripping off other people’s content and passing it off as their own. Next time you hire a big offshore provider, try to make sure that you don’t get Ravita, Janede, Sai or Ilaaaannnn working for you. I’m not sure that they know what they’re doing.