A state file is a multirequest, consisting of several conjuntions. Each conjunction is used to configure one of the following sections of the demo: overall demo, netlogger plugin, reliability plugin, control plugin. A section configuration is indicated by having a single relation:
( config-section = demo|netlogger|reliability|control )
The user's environment will be provided as the base environment for RSL substitutions. Also, the subsitution CONFIG_FILE will be set to the configuration file specified on the command line. Additional substitutions may be made in either the multirequest scope or in the config-section scope.
( config-section = demo )
This relation defines the config-section type for this scope. All other relations within this scope are associated with the demo-wide configuration.
( state-file = path )
The state-file contains the file name of a state file to be used for this transfer. The state file is used when the application is killed and restarted to avoid re-transferring files.
( iterations = number )
The iterations attribute is the amount of times to repeat the transfers before completing the demo.
( transfers = ( fromURL toURL) (fromURL2 toURL2) ... )
The transfers attribute contains a list of URL pairs for the transfers to be performed by the demo. There may be any number of ( fromURL toURL ) sequences.
( handles = number)
The handles attribute contains the number of ftp client handles to be used by the demo app. The number of concurrent transfers will be the lesser of this value and the number of transfer URL pairs defined for the demo. The default is 1.
( cache = "true"|"false" )
The cache attribute contains a boolean value indicating whether the application should cache control connections between multiple transfers of files from the same remove server. If this attribute is set to true, then control connections will be cached between file transfers. The default is false.
( parallelism = number)
The parallelism attribute controls the parallelism level that the transfers should be done at. The parallelism is passed to the ftp server via an OPTS RETR command.
( buffer-size = number )
The buffer-size attribute controls the TCP buffer size for the file transfers. The value is in bytes.
( config-section = netlogger )
This relation defines the config-section type for this scope. All other relations within this scope are associated with the netlogger configuration.
( method = "file"|"syslog"|"host"|
"file-mem"|"syslog-mem"|"host-mem" )
The method attribute controls how netlogger messages will be recorded. In most cases, this should be set to host or host-mem, to cause netlogger messages to be sent to a netlogger daemon. The default value of this attribute is syslog.
( url = "x-netlog://" # hostname # ":" # port )
The url attribute contains the URL of the netlogger server to use. This attribute is only needed if method is set to host or host-mem, but will be safely ignored if not needed.
( file = path )
The file attribute contains the file name to store netlogger messages in. This attribute is only needed if method is set to file or file-mem, but will be safely ignored if not needed.
( extra = "VAR=VAL" )
The extra attribute defines a set of extra netlogger attribute pairs. The value of this parameter is a single string containing all extra attribute pairs you want to be sent in all netlogger messages. The pairs MUST NOT contain the attributes DATE, HOST, PROG, LVL, or NL.EVNT.
( config-section = printf )
This relation defines the config-section type for this scope. All other relations within this scope are associated with the printf configuration.
( output-file = path )
The output-file relation defines the file name where the output of the printf plugin should go. This file will be created if it does not exist, or will be appended to.
The special values /dev/stdout and /dev/stderr correspond to the standard output and standard error of the application. The default value is stdout.
Reliability Plugin Configuration
( config-section = reliability )
This relation defines the config-section type for this scope. All other relations within this scope are associated with the reliability configuration.
( state-directory = path )
The state-directory attribute controls where the reliability plugin will store its transfer-specific state files. The state file names will be based on the unique transfer-id value associated with the transfers. If this attribute is not defined, then the plugin will not be able to restart transfers between runs of the application.
( alternates = ( url1 [ alt_url1 ... ] )
( url2 [ alt_url2 ... ] )
Reliability: tries-before-alternate
( tries-before-alternate
= number )
Reliability: min-transfer-rate
( min-transfer-rate = number )
The min-transfer-rate attribute defines the minimum transfer rate which will be used to decide that a restart is needed. The rate is in bytes/second (in floating point format)
Reliability: min-transfer-timeout
( min-transfer-timeout = time )
( idle-timeout = time )
( restart-delay = time )
The restart-delay attribute defines the amount of time to delay between aborting a transfer and reconnecting to the server.
Remote-Control Plugin Configuration
( config-section = control )
This relation defines the config-section type for this scope. All other relations within this scope are associated with the remote-control configuration.
( timeout = seconds )