Configuration
The PDL Client is configured by an INI format configuration file in the
current working directory called config.ini
. The location of this file may
be specified on the command line using the --configFile=CONFIG_FILE
flag,
where CONFIG_FILE
is the path to the new configuration file to be used.
The Wikipedia INI file page documents the general INI file format. This link directs to a non-government web page.
Global Configuration Properties
There are several top-level configuration properties to being the configuration file. These include:
- loglevel
- Controls log verbosity
- Default:
INFO
- Available values, in order of increasing verbosity:
- SEVERE
- WARNING
- INFO
- CONFIG
- FINE
- FINER
- FINEST
- logTimestamps
- Boolean whether or not to include timestamps of each log line
- Default:
false
- Available values:
- true
- false
- logdirectory
- The directory where logs are located. If a relative path, it is relative to the PDL Client current working directory.
- Default:
log
- logFile
- The log file naming convention.
- Default:
yyyyMMdd.log
- redirectconsole
- Whether or not console output should be redirected.
- Default:
false
- Available values:
- true
- false
- mainclass
- The main class to run once initial bootstrapping is complete.
- Default:
gov.usgs.earthquake.distribution.ProductClient
When using the ProductClient
(i.e., the default mainclass
), there are three
additional top-level configuration parameters:
- receivers
- A comma-separated list of named receivers to use when receiving products. Each value in the list should be the name of a configuration sub-section within the configuration file.
- See: receiving for more information on receiving products.
- listeners
- A comma-separated list of named listeners to use to process products. Each value in the list should be the name of a configuration sub-section within the configuration file.
- See: listeners for more information on listening for (processing) products.
- senders
- A comma-separated list of named senders to use when sending products. Each value in the list should be the name of a configuration sub-section within the configuration file.
- See: sending for more information on sending products.
A single configuration file may be used for both sending and receiving products. When receiving products, each configured listener is notified about each received product.
Each named sub-section within the configuration file represents a configurable object. These configurable objects each have the following set of configurable properties in addition to their class-specific configuration properties.
- type
- Determines the type of object to be instantiated
- This should be a fully-qualified reference to a Java class - using dot notation - found on the Java class path.
Example configuration file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
receivers = receiver_one
listeners = listener_one
senders = sender_one, sender_two
[receiver_one]
type = gov.usgs.earthquake.distribution.DefaultNotificationReceiver
; Additional receiver properties...
[listener_one]
type = gov.usgs.earthquake.distribution.DefaultNotificationListener
; Additional listener properties...
[sender_two]
type = gov.usgs.earthquake.distribution.SocketProductSender
; Additional socket product sender properties ...
[sender_one]
type = gov.usgs.earthquake.aws.AwsProductSender
; Additional AWS sender properties ...
See class-specific documentation for additional configuration parameters for each configuration section in the example file.
Last modified: Tue Sep 3 18:12:44 UTC 2024