scxmldump¶
Dump objects from database or messaging to XML.
Description¶
scxmldump reads SeisComP objects from database or messaging and writes them
in SeisComP XML (SCML) to stdout or into a file (-o
).
Dumping from a SeisComP database supports various objects:
Availability,
Config (bindings parameters),
Event parameters,
Inventory,
Journal,
Routing.
Dumping from a SeisComP messaging (
--listen
) considers only event parameters.
Note
Waveform quality control (QC) parameters can be read from databases using scqcquery.
Furthermore any object carrying a publicID can be retrieved from the database including its hierarchie or not. See PublicObjects.
Event parameters¶
To get event, origin or pick information from the database without using SQL commands is an important task for the user. scxmldump queries the database and transforms that information into XML. Events and origins can be treated further by scbulletin for generating bulletins or conversion into other formats including KML.
Many processing modules, e.g., scevent support the on-demand processing
of dumped event parameters by the command-line option --ep
.
Importing event parameters into another database is possible with scdb
and sending to a SeisComP messaging is provided by scdispatch.
PublicObjects¶
The option --public-id
defines a list of publicIDs to be retrieved
from the database. As the data model is extendable via plugins and custom code,
scxmldump cannot know all of those object types and how to retrieve them
from the database. If a publicID belongs to a type for which the code resides
in another library or plugin, then scxmldump must load this plugin or library
in order to find the correct database tables. For example, if a strong motion
object should be dumped, then the plugin dmsm must be loaded into scxmldump.
scxmldump -d localhost --plugins dbmysql,dmsm --public-id StrongMotionOrigin/123456
This command would only export the StrongMotionOrigin itself without all
child objects. Option --with-childs
must be passed to export the
full hierarchy:
scxmldump -d localhost --plugins dbmysql,dmsm --public-id StrongMotionOrigin/123456 --with-childs
If the extension code resides in a library then LD_PRELOAD can be used to inject the code into scxmldump:
LD_PRELOAD=/home/sysop/seiscomp/lib/libseiscomp_datamodel_sm.so scxmldump -d localhost --public-id StrongMotionOrigin/123456 --with-childs
Format conversion¶
Conversion of SCML into other formats is supported by sccnv.
An XSD schema of the XML output can be found under
$SEISCOMP_ROOT/share/xml/
.
Examples¶
Dump inventory
scxmldump -d mysql://sysop:sysop@localhost/seiscomp -fI -o inventory.xml
Dump config (bindings parameters)
scxmldump -d localhost -fC -o config.xml
Dump full event data including the relevant journal entries
scxmldump -d localhost -fPAMFJ -E test2012abcd -o test2012abcd.xml
Dump full event data. Event IDs are provided by scevtls and received from stdin
scevtls -d localhost --begin 2025-01-01 |\ scxmldump -d localhost -fPAMF -E - -o events.xml
Dump summary event data
scxmldump -d localhost -fap -E test2012abcd -o test2012abcd.xml
Create bulletin from an event using scbulletin
scxmldump -d localhost -fPAMF -E test2012abcd | scbulletin
Copy event parameters to another database
scxmldump -d localhost -fPAMF -E test2012abcd |\ scdb -i - -d mysql://sysop:sysop@archive-db/seiscomp
Dump the entire journal:
scxmldump -d localhost -fJ -o journal.xml
Dump events received from messaging on local computer:
scxmldump -H localhost/production --listen
Module Configuration¶
etc/defaults/global.cfg
etc/defaults/scxmldump.cfg
etc/global.cfg
etc/scxmldump.cfg
~/.seiscomp/global.cfg
~/.seiscomp/scxmldump.cfg
scxmldump inherits global options.
Command-Line Options¶
scxmldump [options]
Generic¶
- -h, --help¶
Show help message.
- -V, --version¶
Show version information.
- --config-file arg¶
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. Example: scautopick -> scautopick2.
- --plugins arg¶
Load given plugins.
- -D, --daemon¶
Run as daemon. This means the application will fork itself and doesn’t need to be started with &.
- --auto-shutdown arg¶
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).
- --shutdown-master-module arg¶
Set 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.
- --shutdown-master-username arg¶
Set 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¶
- --verbosity arg¶
Verbosity level [0..4]. 0:quiet, 1:error, 2:warning, 3:info, 4:debug.
- -v, --v¶
Increase verbosity level (may be repeated, eg. -vv).
- -q, --quiet¶
Quiet mode: no logging output.
- --component arg¶
Limit the logging to a certain component. This option can be given more than once.
- -s, --syslog¶
Use syslog logging backend. The output usually goes to /var/lib/messages.
- -l, --lockfile arg¶
Path to lock file.
- --console arg¶
Send log output to stdout.
- --debug¶
Execute in debug mode. Equivalent to --verbosity=4 --console=1 .
- --log-file arg¶
Use alternative log file.
Messaging¶
- -u, --user arg¶
Overrides configuration parameter
connection.username
.
- -H, --host arg¶
Overrides configuration parameter
connection.server
.
- -t, --timeout arg¶
Overrides configuration parameter
connection.timeout
.
- -g, --primary-group arg¶
Overrides configuration parameter
connection.primaryGroup
.
- -S, --subscribe-group arg¶
A group to subscribe to. This option can be given more than once.
- --content-type arg¶
Overrides configuration parameter
connection.contentType
.
- --start-stop-msg arg¶
Set sending of a start and a stop message.
Database¶
- --db-driver-list¶
List all supported database drivers.
- -d, --database arg¶
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".
- --config-module arg¶
The config module to use.
- --inventory-db arg¶
Load the inventory from the given database or file, format: [service://]location .
- --config-db arg¶
Load the configuration from the given database or file, format: [service://]location .
Dump¶
- -I, --inventory¶
Dump the inventory.
- --without-station-groups¶
Remove all station groups from inventory.
- --stations sta-list¶
If inventory is dumped, filter the stations to dump. Wildcards are supported. Format of each item: net[.{sta|*}].
- -C, --config¶
Dump the configuration (bindings).
- -J, --journal¶
Dump the journal. In combination with -E only corresponding journal entries are included.
- -R, --routing¶
Dump the routing.
- -Y, --availability¶
Dump data availability information.
- --with-segments¶
Dump individual data segments. Requires "--availability".
- --listen¶
Listen to the message server for incoming events. Otherwise scxmldump reads from database.
- -E, --event ID¶
Event public ID(s) to dump. Multiple events may be specified as a comma-separated list. Use "-" for reading the IDs as individual lines from stdin.
- -O, --origin ID¶
Origin public ID(s) to dump. Multiple origins may be specified as a comma-separated list. Use "-" for reading the IDs as individual lines from stdin
- -P, --with-picks¶
Add picks associated to origins.
- -A, --with-amplitudes¶
Add amplitudes associated to magnitudes.
- -M, --with-magnitudes¶
Add station magnitudes associated to origins.
- -F, --with-focal-mechanism¶
Add focal mechanisms associated to events.
- -a, --ignore-arrivals¶
Do not dump arrivals of origins.
- --ignore-magnitudes¶
Do not dump (network) magnitudes of origins. This option is most useful in combination with -O to only dump the location information.
- -p, --preferred-only¶
When dumping events only the preferred origin, the preferred magnitude and the preferred focal mechanism will be dumped.
- -m, --all-magnitudes¶
If only the preferred origin is dumped, all magnitudes for this origin will be dumped.
- --pick ID¶
ID(s) of pick(s) to dump. Use ‘-’ to read the IDs as individual lines from stdin.
- --public-id ID¶
ID(s) of any object(s) to dump. Use ‘-’ to read the IDs as individual lines from stdin. No parent objects are dumped.
- --with-childs¶
Dump also all child objects of dumped objects. Valid only in combination with --public-id.
- --with-root¶
Whether to add the container of exported PublicObjects or not. Objects which are not a direct child of EventParameters, Inventory and so on, also referred to as top-level objects, will not be exported. Valid in combination with --public-id.
Output¶
- -f, --formatted¶
Use formatted XML output. Otherwise all XML is printed on one line.
- -o, --output¶
Name of output file. If not given, output is sent to stdout.
- --prepend-datasize¶
Prepend a line with the length of the XML data.