All,

To me it seems unfortunate that when multiple remote_hosts are used, there are 
multiple threads with the same thread names in the XML output. This makes the 
output less useful. Would it be possible to add the IP address 
(InetAddress.getLocalHost()) of the host at the end of the thread name in 
StandardJMeterEngine or is the functionality that I am looking for already 
available?

Next question: By modifying FunctionProperty.getStringValue to the following, I 
can use property values, e.g., ${__property(report.dir)}/file.xml in the File 
Reporter. Would it be possible to take this modification into the release?

    public String getStringValue() {
        log.debug("Calling getStringValue from FunctionProperty");
        log.debug("boogedy boogedy");
        JMeterContext ctx = JMeterContextService.getContext();//Expensive, so 
do once
        int iter = 0;
        JMeterVariables var = ctx.getVariables();
        if (var != null) {
            iter = ctx.getVariables().getIteration();
            if (iter < testIteration) {
                testIteration = -1;
            }
        }
        if (iter > testIteration || cacheValue == null) {
            testIteration = iter;
            cacheValue = function.execute();
        }
        return cacheValue;
    }

Unfortunately, this doesn't yet solve the problems of resolving variables in 
the Custom Variables of the Test Plan because the replacer is not used in 
PreCompiler.addNode. Could this also be fixed, please? I am happy to help, if 
desired.

I find it kind of annoying that a separate VM is required for the RMI registry 
in remote servers. Hence, I have created my own startup class. Probably, you 
would want to execute the registry creation part only if there is an i such 
that "-r".equals(args[i]):

public class Startup {

    public static void main(String[] args) throws Throwable {
        try {
            String base = 
Startup.class.getProtectionDomain().getCodeSource().getLocation().toString();
            int index = base.lastIndexOf("/bin/");
            base = base.substring(0, index + 1);
            String codebase = base + "lib/ext/ApacheJMeter_core.jar" + " " + 
base + "lib/jorphan.jar" + " " + base + "lib/logkit-1.2.jar";
            System.setProperty("java.rmi.server.codebase", codebase);
            System.setSecurityManager(new SecurityManager() {

                public void checkPermission(Permission perm) {
                }

                public void checkPermission(Permission perm, Object context) {
                }
            });
            LocateRegistry.createRegistry(1099);
            NewDriver.main(args);
        } catch (Throwable t) {
            t.printStackTrace();
            throw t;
        } finally {
        }
    }
}

I have used InstallAnywhere to turn the JMeter remote engine into a Windows 
service. However, I think it would be even better if the Java Service Wrapper 
(http://wrapper.tanukisoftware.org/doc/english/index.html) were used. This 
would also allow a restart of the VM after each test, just in case we have a 
memory issue.

Regards,

Martin

------------------------------------------ 
A v a l o q - essential for banking 
Avaloq Evolution AG 
Allmendstrasse 140, 8027 Z�rich 
T +41 44 488 6888, F +41 44 488 6868, <http://www.avaloq.com/> 
Martin B�chi <mailto:[EMAIL PROTECTED]> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to