Earthworm hypo2000_arc messages importer
Earthworm to SeisComP3 application.
This application connects to an Earthworm export module using IP protocol and listens for messages through a specified socket.
The communication between Earthworm and SeisComP3 is done by using Earthworm export_generic protocol. It's a TCP/IP protocol over which text messages are sent by Earthworm. An hearbeat is sent by both ends of the socket (Earthworm and SeisComP3), at a regular rate. If for some reason the hearbeat is not received during a configurable amount of time (which should be higher than the expected heartbeat rate), then the connection is re-initiated.
The messages sent trough the socket are identified by their institute ID and their module ID. These IDs are configured within the export_generic Earthworm module and Earthworm system. Ew2sc3 only supports hypo2000_arc messages type from Earthworm identified by the message ID 14. Therefore, any other message which ID is not 14 will be ignored.
When a message is received, ew2sc3 will first assess whereas it is correct or not according to the institute and module IDs. Then, the hypo2000_arc message is parsed and picks, arrivals, magnitudes and origin are created. A new origin message with associated magnitudes, arrivals and picks is then sent to SeisComP3 messaging system so it can be properly treated by scevent.
In case latitude and longitude in the hypo2000_arc message are null (space filled), a default location is used.
Hypo2000_arc message uses weights for pick quality, 0 being the best picks and 4 the worst. Those weights are translated into uncertainties for SeisComP3. A list of uncertainties is configured into ew2sc3 configuration file (pickerUncertainties). Then weights from 0 to maxUncertainty are matched with the minimum and maximum uncertainties. Finally, a linear formula allows to find the uncertainty corresponding to the assigned weight.
A great deal of information is available at Earthworm User Community Wiki http://love.isti.com/trac/ew/wiki
More informations on the content of Hypo2000_arc message can be found on Earthworm website. http://love.isti.com/trac/ew/wiki/Year_2000_Compliant_Earthworm_Message_Formats
More informations on export_generic configuration can be found on Earthworm website. http://love.isti.com/trac/ew/wiki/export_generic
ew2sc3 inherits global options.
Type: string
Folder to store logs and achives of hypo2000_arc files from Earthworm export_genericer
Type: int
Earthworm export_generic's socket to listen to
Type: int
Expected Earthworm Module ID (ew2sc3 will read the message only if its ModID is correct). Set to 0 (MOD_WILDCARD) to accept any Earthworm Module ID.
Type: int
Expected Earthworm Institute ID (ew2sc3 will read the message only if its InstID is correct) Set to 0 (INST_WILDCARD) to accept any Earthworm Institute ID.
Type: string
Institute name to use when storing origin into database. If blank, the origin will have the system AgencyID. If specified, the origin will have the given AgencyID.
Type: string
Author name to use when storing origin into database.
Type: string
Earthworm export_generic IP address to connect to
Type: string
Default event latitude to use if hypo2000_arc location is null (space filled)
Type: string
Default event longitude to use if hypo2000_arc location is null (space filled)
Type: string
Name of the earth model used by Earthworm location process
Type: bool
Enable/Disable hypo2000_arc message file archiving (usefull for troobleshooting)
Type: int
Time interval (in sec) between two heartbeats messages sent by SeisComP3. This parameter should be lower than Earthworm export_generic RcvAliveInt parameter
Type: int
Maximum time (in millisecond) before the connection to Earthworm export_generic times out. This parameter has to be set accordingly to Earthworm export_generic parameters
Type: int
Maximum message size (in char) between the Earthworm export_generic and ew2sc3. This parameter has to be set accordingly to Earthworm export_generic MaxMsgSize parameter
Type: string
Alive string to send to Earthworm export_generic in order to keep the connection alive. This string should be identical as Earthworm export_generic RcvAliveText string
Type: string
Alive string expected from Earthworm export_generic in order to keep the connection alive. This string should be identical as Earthworm export_generic SendAliveText string
Type: bool
Enable/Disable uncertainties conversions. Earthworm doesn't have uncertainties but weight from 0 to 4. If enabled, ew2sc3 will convert pick weight to uncertainties followind a simple mapping between weight and pickerUncertainties list.
Type: list:double
Uncertainty values (in sec) to use when enableUncertainties is enabled. Refer to scolv document for syntax.
Type: double
Maximum weight value from Earthworm corresponding to maximum uncertainty
show help message.
show version information
Use alternative configuration file. When this option is used the loading of all stages is disabled. Only the given configuration file is parsed and used. To use another name for the configuration create a symbolic link of the application or copy it, eg scautopick -> scautopick2.
Load given plugins.
Run as daemon. This means the application will fork itself and doesn't need to be started with &.
Enable/disable self-shutdown because a master module shutdown. This only works when messaging is enabled and the master module sends a shutdown message (enabled with --start-stop-msg for the master module).
Sets the name of the master-module used for auto-shutdown. This is the application name of the module actually started. If symlinks are used then it is the name of the symlinked application.
Sets the name of the master-username of the messaging used for auto-shutdown. If "shutdown-master-module" is given as well this parameter is ignored.
Verbosity level [0..4]. 0:quiet, 1:error, 2:warning, 3:info, 4:debug
Increase verbosity level (may be repeated, eg. -vv)
Quiet mode: no logging output
Limits the logging to a certain component. This option can be given more than once.
Use syslog logging back end. The output usually goes to /var/lib/messages.
Path to lock file.
Send log output to stdout.
Debug mode: --verbosity=4 --console=1
Use alternative log file.
Overrides configuration parameter connection.username.
Overrides configuration parameter connection.server.
Overrides configuration parameter connection.timeout.
Overrides configuration parameter connection.primaryGroup.
A group to subscribe to. This option can be given more than once.
Overrides configuration parameter connection.encoding.
Sets sending of a start- and a stop message.
List all supported database drivers.
The database connection string, format: service://user:pwd@host/database. "service" is the name of the database driver which can be queried with "--db-driver-list".
The configmodule to use.
Load the inventory from the given database or file, format: [service://]location
Do not use the database at all