Core properties
The Grinder is controlled by setting properties in the grinder.properties file. Here's a minimal grinder.properties file that uses the HttpPlugin:
grinder.plugin=net.grinder.plugin.http.HttpPlugin grinder.test0.parameter.url=http://localhost:80/index.html
If you start The Grinder using this properties file it will communicate with the console using default addresses, use one worker process, one thread, and runs one cycle which contains once test. This is not too much use, so read on...
Table of core properties
This table lists the core properties understood by The Grinder engine. Refer to plugin specific documentation for additional properties understood by the plugin you are using.
grinder.processes | The number of worker processes to start. Default 1. |
grinder.threads | The number of aworker threads that each worker process spawns. Default 1. |
grinder.cycles | The number of cycles of the test script each thread performs. 0 means "run forever". Default 1. |
grinder.jvm | Use an alternate JVM for worker processes. Defaults to java so you do not need to specify this if your PATH is sensible. |
grinder.jvm.classpath | Use to adjust the classpath used for the worker process JVMs. Anything specified here will be prepended to the classpath used to start the Grinder processes. |
grinder.jvm.arguments | Additional arguments to worker process JVM's. |
grinder.logDirectory | Directory to write log files to. Created if it doesn't already exist. |
grinder.appendLog | Append to, rather than overwrite, existing log files. |
grinder.hostID | Override the "host" string used in log filenames and logs. Defaults to the host name. |
grinder.receiveConsoleSignals | Set to true to respond to console signals. Default true. |
grinder.reportToConsole | Set to true to send statistics to the console. Default true. |
grinder.consoleAddress | The IP address or hostname to use for communication from the Grinder processes to the console. Default is all the network interfaces of the local machine. |
grinder.consolePort | The IP port to use for communication from the Grinder processes to the console. Default is 6372. |
grinder.grinderAddress | The multicast address to use for communication from the console to the agent and worker processes. See What do I need to do to set up multicast?. Default 228.1.1.1. |
grinder.grinderPort | The multicast port to use for communication from the console to the agent and worker processes. Default 1234. |
grinder.reportToConsole.interval | The period at which each process sends updates to the console. This also controls the frequency at which the data files are flushed. Default 500 ms. |
grinder.thread.initialSleepTime | The maximum time in milliseconds that each thread waits before starting. Unlike the other sleep times, this is varied according to a flat random distribution. The actual sleep time will be a random value between 0 and the specified value. Affected by grinder.thread.sleepTimeFactor, but not grinder.thread.sleepTimeVariation. Default 0 ms. |
grinder.thread.sleepTime | The time in milliseconds to wait between individual tests. Affected by both grinder.thread.sleepTimeFactor, and grinder.thread.sleepTimeVariation. Default 0 ms. |
grinder.thread.sleepTimeFactor | Apply a factor to all the sleep times you've specified. Setting this to 0.1 would run the script ten times as fast. Default 1. |
grinder.thread.sleepTimeVariation | The Grinder varies the specified sleep times according to a Normal distribution. This property specifies a fractional range within which nearly all (99.75%) of the times will lie. E.g., if the sleep time is specified as 1000 and the sleepTimeVariation is set to 0.1, then 99.75% of the actual sleep times will be between 900 and 1100 milliseconds. Default 0.2. |
grinder.plugin | The plugin class to use. Currently each script uses a single plugin. |
grinder.plugin.parameter | Prefix for properties interpreted by the plugin. See the the HTTP plugin documentation for examples. |
grinder.test0 | Prefix for test 0 properties. Test 1 properties have a prefix of grinder.test1, and so on. The tests are run in numerical order. |
grinder.test0.description | Information string used in the log files and the console. |
grinder.test0.sleepTime | Override grinder.thread.sleepTime for a specific test. |
grinder.test0.parameter | Prefix for test specific properties interpreted by the plugin. See the the HTTP plugin documentation for examples. |
grinder.logProcessStreams | Set to false to disable the logging of output and error steams for worker processes. You might want to use this to reduce the overhead of running a client thread. Default true. |
grinder.recordTime | Set to false to disable reporting of timing information; other statistics are still reported. Default true. |