import_inv

Import inventory information from various sources.

Description

import_inv is a wrapper for inventory converters. Inventory converters convert an input format such as

Format

Converter

Conversion

scml

scml2inv

SeisComP inventory XML, schema: $SEISCOMP_ROOT/share/xml/

sc3

sc32inv

Alias for scml for backwards compatibility to SeisComP3

arclink

arclink2inv

Arclink inventory XML

dlsv

dlsv2inv

dataless SEED

fdsnxml

fdsnxml2inv

FDSN StationXML

to SeisComP inventory XML which is read by the trunk config module to synchronize the local inventory file pool with the central inventory database.

For printing all available formats call

$ import_inv help formats

When import_inv help formats is called it globs for $SEISCOMP_ROOT/bin/*2inv. If another format needs to be converted, it is very easy to provide a new converter.

Converter interface

For making a new converter work with import_inv it must implement an interface on shell level. Furthermore the converter program must be named format2inv and must live in SEISCOMP_ROOT/bin.

The converter program must take the input location (file, directory, URL, …) as first parameter and the output file (SeisComP XML) as second parameter. The output file must be optional and default to stdout.

To add a new converter for a new format, e.g. Excel, place the new converter program at $SEISCOMP_ROOT/bin/excel2inv.

Examples

  • Convert inventory file in FDSN StationXML format (fdsnxml) and copy the content to $SEISCOMP_ROOT/etc/inventoy/inventory.xml. The call will invoke fdsnxml2inv for actually making the conversion:

    $ import_inv fdsnxml inventory_fdsn.xml $SEISCOMP_ROOT/etc/inventoy/inventory.xml
    

Configuration

etc/defaults/global.cfg
etc/defaults/import_inv.cfg
etc/global.cfg
etc/import_inv.cfg
~/.seiscomp/global.cfg
~/.seiscomp/import_inv.cfg

import_inv inherits global options.

Command-line

import_inv [FORMAT] input [output]

import_inv help [topic]

The first form takes the format as first parameter and the input and output location. The input location is either a file or directory depending on the format and its converter. If the output is not given it defaults to seiscomp/etc/inventory/{input}.xml. To write the output to stdout, “-” must be used.

The second form provides help on a particular topic. The only topic currently supported is “formats” which prints all available input formats.

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, eg 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

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.

--shutdown-master-username arg

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

--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

Limits the logging to a certain component. This option can be given more than once.

-s, --syslog

Use syslog logging back end. The output usually goes to /var/lib/messages.

-l, --lockfile arg

Path to lock file.

--console arg

Send log output to stdout.

--debug

Debug mode: –verbosity=4 –console=1

--log-file arg

Use alternative log file.