The JRDS properties
Properties should be stored in a java properties file. For a jetty server, it should be specified using the propertiesFile system property. For other web server, see your web server documentation. An init parameter for the web app called propertiesFile can be used, or a system property called jrds.propertiesFile.
Every properties can specified as a system property (for example on the commande line with -D). When doing this, it must be prefixed with jrds. . For example you an easily debug a jetty settup using -Djrds.loglevel=debug on the commande line.
The effective collect time is step - 2 × timeout. So if step is set to a short value, timeout should be decreased too.
Bold properties are required.
The path and directory properties
configdir: the directory parsed to find xml configuration files.autocreate: enable the auto-creation of configdir and rrddir.tmpdir: the temporary directory. If not defined, the properties javax.servlet.context.tempdir and java.io.tmpdir are searched.rrddir: where the probes files (rrd) are to be stored.strictparsing: is the parsing of config file is strict, with DTD checking.
The log setting properties
nologging: disable totally the logslogfile: where the logs are to be written.loglevel: the default log level, taken from {trace, debug , info, warn, error, fatal}.log.{trace, debug , info, warn, error, fatal}: specify the log level for a comma separated list of class.log4jxmlfile: the path to a log4J XML file that will override the jrds log configuration.log4jpropfile: the path to a log4J properties file that will override the jrds log configuration.
The security properties
security: set toyesto activate roles based access to JRDS' URL.userfile: if jetty is used, the path to Jetty's user file.adminrole: the admin role, any user having this role will have full access to JRDS.defaultroles: a comma separated list of roles affected to object without roles defined.
Poller configuration
step: the interval (in seconds) betwen each collect. One it's choosen, it cannot be changed.timeout: the timeout value (in seconds) for network activities.collectorThreads: how many different hosts are collected in parallel. It should be at least twice the numer of CPU on the jrds host.timers: a comma separated list of additional timers, with different timeout, step and collectorThreadstimer.<timer1>.step: the step value for timertimer1.timer.<timer1>.timeout: the timeout value for timertimer1.timer.<timer1>.collectorThreads: the number of collector threads for timertimer1.
For each timer, the default values for step, timeout and collectorThreads are taken from the default timer.
Other parameters
libspath: a list of jar containing probes.classpath: a list of jar or directory containing jars or that we'll be added to the classpath.dbPoolSize: how many rrd can be openned by the org.rrd4j.core.RrdDbPoolsyncPeriod: the sync period for the org.rrd4j.core.RrdDbPoolrrdbackend: the kind of rrdbackend to use, see org.rrd4j.core.RrdBackendreadonly: start jrds in read-only mode, no collect will be done.
Log configuration
When a log4j configuration file is specified with log4jxmlfile or log4jpropfile, jrds leaves everything to it, so all the others configurations properties are ignored.
The loglevel can be choosen with the option :
loglevel=LEVEL
The level are the same as in log4j, and are, with increased verbosity :
fatal, error, warn, info, debug, trace.
Trace level should be avoided except in some rare conditions and even debug level can be quite verbose.
Log level for a specific class is set with the property :
log.LEVEL=CLASSLIST
The argument CLASSLIST is a comma separated list of Java classes. For probes and starters, there is a trick that allows to specifiy the log level using the magic class name jrds.Probe.ProbeName or jrds.Starter.StarterName
