Friday, June 20, 2014

Issues Encountered on Linux / Unix LG

Problem StatementDuring testing we might encounter situations where we have to simulate load from LINUX / UNIX LGs. Post installation of Loadrunner binaries on the server we might face certain issues as mentioned below and their solutions / workaround to solve them.

Issue Tags: $M_LROOT is not set, verify_generator failed, Verify running the product executables...Failed, Failed to load client QTWeb

Solution
The most common error that you can encounter is when you run the verify_generator.sh script; you will get the first error as shown below:
Once this is done, you should be able to run the script fine on your LINUX/UNIX.




This error comes when the verify_generator.sh calls the vuserchk.sh file; you can fix the issues by doing the changes in vuserchk.sh file as mentioned in the below screenshot:


The above changes should fix the issues in verify_generator.sh script.

Sometimes you might get the below shown error:


This issue comes because of missing run-time libraries; you can fix this issue by running the below command:

Install with root privelges - libstdc++.so.5  under /usr/lib/

The LG Operates in 2 modes - rsh mode and daemon mode; if the controller is not able to connect to the LG in rsh mode then you can make it work by running LG in daemon mode.

Do the following changes in your UNIX/LINUX LG to make it work in daemon mode:

Run Install command "./m_daemon_setup -install" from the /bin directory.
Command to start:  “./m_daemon_setup start”

Command to Stop: “./m_daemon_setup –remove”

From Controller UI
1. In the Load Generator Window, go to Details -> Unix Environment -> Shell settings section. 

2. Select the "Don't use RSH" checkbox.

once the daemon is running and you are able to connect the LG from controller machine, you can do a quick check by running a normal web protocol script. If you are getting the below shown screenshot (Failed to load client QTWeb) in controller then this can be due to a 64-bit OS which requires some additional libraries to be installed:



see the below snapshot for the steps to be done to resolve this issue:


Below i have mentioned some basic troubleshooting steps which you can do:

General debugging steps:
   a. Verify ping and rsh are working to and from the remote machine.
   b. The .rhosts file on remote machine with 644 permission minimum and + +.
   c. The following enviroment variables should be set:
      $M_LROOT
      $M_LROOT/bin library path included
      $M_LROOT/bin included in PATH
   d. Check the environment settings via rsh:
      K-shell (ksh): 
         rsh -n "/bin/ksh -c env"
      Bourne Shell (sh):
         rsh -n "/bin/sh -c env"
      C-shell (csh):

         rsh -n "/bin/csh -c env"