shard

SHARD application suite

Description

SHARD is a web based application to monitor the structural health.

Module Configuration

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

shard inherits global options.

Note

Modules/plugins may require a license file. The default path to license files is @DATADIR@/licenses/ which can be overridden by global configuration of the parameter gempa.licensePath. Example:

gempa.licensePath = @CONFIGDIR@/licenses
bind

Default: 127.0.0.1:8080

Type: list:string

Set the address and port for incoming connections.

mediaDirectory

Default: @DATADIR@/shard/apps

Type: list:string

Set the path where to look for your web application.

tileDB

Default: @DATADIR@/gaps/zoom12.mbtiles

Type: path

Configures the MBTiles tile database if shard should serve map tiles itself. Further, set apps.mapURI to "../tiles/{z}/{y}/{x}". If mapURI is configured with a remote tile server, this is not required.

bufferSize

Default: 65536

Unit: byte

Type: int

Set the buffer size for each request.

maximumThreads

Default: 10

Type: int

Set the maximal amount of record threads.

requestTimeout

Default: 10

Unit: s

Type: int

Set the thread timeout.

GDS

Type: string

The GDS dissemination address. Format is "host:port/queue", e.g. "localhost:20000/shard". Note that the queue must be configured in GDS.

buildings

Type: list:string

List of configured buildings. Each building listed here is the name of a parameter structure which has to be configured with "building.[name].*".

map.location

Default: @DATADIR@/gaps/zoom12.mbtiles

Type: path

Alternative configuration parameter for @tileDB.

Note

building.$name.* $name is a placeholder for the name to be used and needs to be added to buildings to become active.

buildings = a,b
building.a.value1 = ...
building.b.value1 = ...
# c is not active because it has not been added
# to the list of buildings
building.c.value1 = ...
building.$name.name

Type: string

Name of the building as shown in the frontend.

building.$name.description

Type: string

Optional building description to be used in e.g. tooltips.

building.$name.latlon

Type: list:double

Latitude and Longitude as two item list, e.g. 52.23456, 13.23456.

building.$name.type

Default: building

Type: string

Optional building type that is used to generate a corresponding icon on the map. The type name corresponds to the filename of the icon to be used. This icon must exist in "$SEISCOMP_ROOT/share/shard/apps/share/css/icons/structure/[type].png". If the icon can not be found just a shadow is plotted onto the map at the position of the building/structure.

building.$name.picture

Type: string

Path to your building picture relative to a path of a web application. This path is actually a URI and not a file path. It can be used as absolute path starting with "https://". Every locator that a browser supports is possible. Default directory to check for pictures is "@DATADIR@/shard/apps/assets/images/structure"

building.$name.liveStreams

Type: list:string

List of sensors. Each live stream listed here is the name of a parameter structure which has to be configured with "building.[name].liveStream.[stream].*".

building.$name.recordBufferSize

Default: 1200

Type: integer

Size of record buffer. It corresponds to the length of the data time window shown in the dashboard.

building.$name.sensors

Type: list:string

List of sensors. Each sensor listed here is the name of a parameter structure which has to be configured with "building.[name].sensor.[sensor].*".

Note

building.$name.liveStream.$name.* $name is a placeholder for the name to be used and needs to be added to liveStreams to become active.

liveStreams = a,b
building.$name.liveStream.a.value1 = ...
building.$name.liveStream.b.value1 = ...
# c is not active because it has not been added
# to the list of liveStreams
building.$name.liveStream.c.value1 = ...
building.$name.liveStream.$name.description

Type: string

Description of the live stream

building.$name.liveStream.$name.url

Type: string

URL directing towards a live stream

Note

building.$name.sensor.$name.* $name is a placeholder for the name to be used.

building.$name.sensor.$name.name

Type: string

The name of the sensor. The name is shown in the frontend.

building.$name.sensor.$name.type

Type: string

The type of the sensor. Types "acceleration", "velocity" and "displacement" are supported. If the type is velocity or displacement then data are differentiated to acceleration in the frontend.

building.$name.sensor.$name.id

Type: string

The sensor id. The id is composed of network-, station- and location-code, e.g. "XX.ABCD". This will take the sensor location at station XX.ABCD with empty location code. A non-empty location code may be added to the station code, e.g. "XX.ABCD.00".

building.$name.sensor.$name.imgpos

Type: list:int

The position in the provided station picture of the sensor as two item list, e.g. 123, 456.

building.$name.sensor.$name.channels

Type: list:string

The list of channel codes for each component to be shown in the frontend.

building.$name.sensor.$name.displacementChannels

Type: list:string

The list of displacement channel codes for each component to be shown in the frontend if displacement traces are selected.

building.$name.sensor.$name.driftChannels

Type: list:string

The list of drift channel codes for each component to be shown in the frontend if drift traces are selected.

building.$name.sensor.$name.f1Channels

Type: list:string

The list of fundamental frequency channel codes for each component to be shown in the frontend if fundamental frequency traces are selected.

incidents.database

Default: @ROOTDIR@/var/lib/shard/archive.db

Type: string

Path to the SQLite3 database file. If a database server (e.g. MYSQL) should be used, provide a database URI as with any SeisComP3 application, e.g. "mysql://sysop:sysop@localhost/shard".

Note

apps.* Web app specific configurations.

apps.serverAPI

Default: ../

Type: string

Defines the path where to request your data.

apps.mapURI

Default: http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png

Type: string

The tile server URL for for the SHARD frontend, e.g., "http://example.com:8080/tiles/{z}/{y}/{x}". Default is "http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png". Depending on the service the order/arrangement of "{z}/{x}/{y}" might be different as well as the file ending, e.g., ".png".

apps.mapZoom

Default: 18

Type: int

The initial zoom of the map.

apps.minTraceScale

Default: 2e-4

Type: double

The minimum trace scale in sensor units of trace data in e.g. the dashboard.

Default: http://localhost:18080/events/query

Type: string

The QuakeLink event request URI that is called by the web browser that accesses the SHARD frontend. This URI must be public for the clients and accessible via the web browser.

apps.events.timeSpan

Default: 12

Unit: hours

Type: double

Size of the event buffer in the browser. The default value shows e.g. the events of the last 12 hours in a map.

apps.events.filter

Type: string

In addition to the above filters this filter must contain a valid Quakelink WHERE statement which will be combined with the generated WHERE clause with AND. Don’t set this option if you don’t know what that really means.

apps.events.mag.min

Type: double

The minimum magnitude.

apps.events.mag.max

Type: double

The maximum magnitude.

apps.events.depth.min

Type: double

The minimum depth in km.

apps.events.depth.max

Unit: km

Type: double

The maximum depth in km.

apps.events.lat.min

Unit: deg

Type: double

The minimum latitude in degree.

apps.events.lat.max

Unit: deg

Type: double

The maximum latitude in degree.

apps.events.lon.min

Unit: deg

Type: double

The minimum longitude in degree.

apps.events.lon.max

Unit: deg

Type: double

The maximum longitude in degree.

apps.heatmap.timeSpan

Default: 7

Unit: days

Type: int

Number of days shown in the browser. The default value loads the data of the last 7 days.

Note

avd.* (A)cceleration, (V)elocity and (D)isplacement specific processing parameters.

avd.streams

Type: list:string

Defines a list of stream ids that can contain wildcards that should be processed. For each stream a real-time peak ground amplitude is computed.

avd.referenceSpectrum

Type: list:string

Defines a global default reference spectrum either as a list of pairs frequency:magnitude, e.g. "0.5:1, 1:2, -1:3", whereupon -1 is a special frequency value that corresponds to the Nyquist frequency of the processed stream, or as a path to a file beginning with "<", e.g. "<@DATADIR@/shard/stations/design/referenceSpectrum.ds". The customizable reference spectrum can be retrieved from "https://eurocodeapplied.com/design/en1998/elastic-response-spectrum". If the reference spectrum is exceeded at at least one node an alert is issued.

avd.fragilityCurves

Type: path

Defines the default fragility curves filepath to a file in NRML format. Each structure can be configured with its own fragility curves. If no fragility curves are assigned to a structure, this default curve set will be used.

avd.varianceThreshold

Default: -1

Unit: sensor units squared

Type: double

Defines a global default variance threshold. If the variance of the sensitivity corrected data used to compute a spectrum is below this threshold a warning is issued. Negative numbers disable warnings.

avd.delayThreshold

Default: -1

Unit: s

Type: double

Defines a global default delay threshold. If that threshold is exceeded per received record (receive time - record end time) a warning is issued. Negative numbers disable warnings.

avd.pgaWatch

Default: -1

Unit: m/s/s

Type: double

Defines a global default PGA threshold used to issue an information if exceeded.

avd.pgaWarning

Default: -1

Unit: m/s/s

Type: double

Defines a global default PGA threshold used to issue a warning if exceeded.

avd.pgaAlert

Default: -1

Unit: m/s/s

Type: double

Defines a global default PGA threshold used to issue an alert if exceeded.

avd.pgaWatchIntensity

Default: -1

Unit: MMI

Type: double

If not absolute pga watch threshold is configured it will be calculated according to the given MMI intensity according to Kaestli and Faeh (2006).

avd.pgaWarningIntensity

Default: -1

Unit: MMI

Type: double

If not absolute pga warning threshold is configured it will be calculated according to the given MMI intensity according to Kaestli and Faeh (2006).

avd.pgaAlertIntensity

Default: -1

Unit: MMI

Type: double

If not absolute pga alert threshold is configured it will be calculated according to the given MMI intensity according to Kaestli and Faeh (2006).

avd.incidentsMaxTimeSpan

Default: 3600

Type: double

Defines the time span of incidents held in memory and sent to a client initially. This buffer is a real time ring buffer and buffers the last configured time span of incidents.

avd.prsMaxTimeSpan

Default: 60

Unit: s

Type: double

Defines the time span to compute the maximum value for each configured pseudo elastic response spectrum frequency (node in the reference spectrum). A value <= 0 disables it.

avd.bindings

Type: list:string

Define a list of channel profiles to be used. The profiles are evaluated in the given order and each match updates the previous match.

Note

avd.bindings.$name.* $name is a placeholder for the name to be used.

avd.bindings.$name.patterns

Type: list:string

A list of stream id patterns that activate the profile a channel where its id matches at least one item of the pattern list. Each item can contain wildcards and network-, station-, location- and channel codes are separated with a dot.

avd.bindings.$name.referenceSpectrum

Type: list:string

The reference spectrum either as a list of pairs frequency:magnitude, e.g. "0.5:1, 1:2, -1:3", whereupon -1 is a special frequency value that corresponds to the Nyquist frequency of the processed stream, or as a path to a file beginning with "<", e.g. "<@DATADIR@/shard/stations/design/referenceSpectrum.ds". The customizable reference spectrum can be retrieved from "https://eurocodeapplied.com/design/en1998/elastic-response-spectrum". If the reference spectrum is exceeded at at least one node an alert is issued.

avd.bindings.$name.fragilityCurves

Type: path

Defines the fragility curves filepath to a file in NRML format for this particular structure.

avd.bindings.$name.varianceThreshold

Default: -1

Unit: sensor units squared

Type: double

The variance threshold. If that threshold is exceeded with the variance of the sensitivity corrected raw data used to compute a spectrum a warning is issued. Negative numbers disable warnings.

avd.bindings.$name.delayThreshold

Default: -1

Unit: s

Type: double

The delay threshold. If that threshold is exceeded per received record (receive time - record end time) a warning is issued. Negative numbers disable warnings.

avd.bindings.$name.pgaWatch

Default: -1

Unit: m/s/s

Type: double

PGA threshold used to issue an information if exceeded.

avd.bindings.$name.pgaWarning

Default: -1

Unit: m/s/s

Type: double

PGA threshold used to issue a warning if exceeded.

avd.bindings.$name.pgaAlert

Default: -1

Unit: m/s/s

Type: double

PGA threshold used to issue an alert if exceeded.

avd.bindings.$name.pgaWatchIntensity

Default: -1

Unit: MMI

Type: double

If not absolute pga watch threshold is configured it will be calculated according to the given MMI intensity according to Kaestli and Faeh (2006).

avd.bindings.$name.pgaWarningIntensity

Default: -1

Unit: MMI

Type: double

If not absolute pga warning threshold is configured it will be calculated according to the given MMI intensity according to Kaestli and Faeh (2006).

avd.bindings.$name.pgaAlertIntensity

Default: -1

Unit: MMI

Type: double

If not absolute pga alert threshold is configured it will be calculated according to the given MMI intensity according to Kaestli and Faeh (2006).

Note

avd.spec.* If a reference spectrum is specified this parameters are in effect to configure the spectra computation.

avd.spec.length

Default: 20

Unit: s

Type: double

Defines the trace length in seconds to compute the spectra from.

avd.spec.overlap

Default: 0.5

Type: double

Defines the overlap ratio of the time windows used for the running spectra computation. The overlap in seconds is then length*overlap.

Note

report.* Parameters controlling the output of processing products.

report.clean

Default: true

Type: boolean

Remove temporary data after script run.

report.defaultLocale

Default: en

Type: string

The default language of automatic generated reports. The default language is "en" (English). Other supported languages are "es" (Spanish) and "de" (German).

report.exportScript

Type: path

The script that will be called when an incident is exported. Please ensure that the script is executable. The script gets the working directory and the language as argument.

report.mapSize

Default: 1024x768

Type: string

Map output resolution

report.preWindowLength

Default: 30

Unit: s

Type: double

The pre event/incident time window length in seconds.

report.postWindowLength

Default: 30

Unit: s

Type: double

The post event/incident time window length in seconds.

Type: string

The QuakeLink event request URI that is called from the SHARD server itself. It can be an internal URI but must start with either http:// or https://. The default value is taken from apps.quakelink.

report.recordStreamURI

Type: string

Sets the recordstream URI for report generation. It is important to note that this URI should be an archive source that does not block if data are not available such as Seedlink. In connection with CAPS the option "arch" should be used, e.g. "caps://localhost:18002?arch".

Note

report.filter.* Filter options for automatic reporting

report.filter.refspec

Default: false

Type: boolean

No description available

report.filter.event.enable

Default: true

Type: boolean

No description available

report.filter.event.minimumIntensity

Default: 3

Type: double

The minimum intensity (GMPE) at the building for automatic reporting.

report.filter.event.minimumDelay

Default: 180

Unit: s

Type: double

The minimum time delay after origin time for automatic reporting.

report.filter.event.maximumDelay

Default: 3600

Unit: s

Type: double

The maximum time delay after origin time for automatic reporting.

report.filter.pga.alert

Default: false

Type: boolean

No description available

report.filter.pga.warning

Default: false

Type: boolean

No description available

report.filter.pga.watch

Default: false

Type: boolean

No description available

report.processing.targetDistricts

Type: list:string

A list of Shapefile paths used as target districts for GMPE/intensity computation.

report.processing.maximumEpicentralDistance

Default: 400

Unit: km

Type: int

The maximum epicentral distance in km of a station being considered for processing. This value is used if wfparam.magnitudeDistanceTable is not specified.

report.processing.firstPhaseVelocity

Default: 8

Unit: km/s

Type: double

The maximum epicentral distance in km of a station being considered for processing. This value is used if wfparam.magnitudeDistanceTable is not specified.

report.processing.preEventWindowLength

Default: 60

Unit: s

Type: int

The pre event time window length in seconds.

report.processing.postEventWindowLength

Default: (0.36*d)+60

Unit: s

Type: string

Default value of time window length after the event onset in seconds. This value is an numerical expression and can include three symbols: d (distance in km), D (distance in degree) and az (azimuth clockwise from North).

report.processing.eventCutOff

Default: true

Type: boolean

Enables/disables pre event cut-off. A hardcoded sta/lta algorithm (with sta=0.1s, lta=2s, sta/lta threshold=1.2) is run on the time window defined by (expected_P_arrival_time - 15 s). The pre event window is hence defined as [t(sta/lta =1.2) - 15.5s, t(sta/lta =1.2) - 0.5s].

report.processing.afterShockRemoval

Default: true

Type: boolean

Enables/disables aftershock removal (Figini, 2006; Paolucci et al., 2008)

report.processing.durationScale

Default: 1.5

Type: double

Defines the factor applied to the significant duration to define the processing spectra time window. If that value is <= 0 the totalTimeWindowLength is used.

report.processing.STAlength

Default: 1

Unit: s

Type: double

Specifies the STA length in seconds of the applied STA/LTA check.

report.processing.LTAlength

Default: 60

Unit: s

Type: double

Specifies the LTA length in seconds of the applied STA/LTA check.

report.processing.STALTAratio

Default: 3

Type: double

Specifies the minimum STALTA ratio to be reached to further process a station.

report.processing.STALTAmargin

Default: 5

Unit: s

Type: double

Specifies the number of seconds around P to be used to check the STA/LTA ratio.

Note

report.processing.filter.* Parameters of the 1st stage filter.

report.processing.filter.order

Default: 4

Type: int

Specifies the order of the 1st stage filter.

report.processing.filter.loFreq

Default: 0.025

Type: double

Specifies the frequency of the 1st stage hi-pass filter. If this parameter is equal to 0 the hi-pass filter is not used. If negative, then the absolute value is multiplied by the Nyquist frequency of the data to get the final corner frequency of the filter.

report.processing.filter.hiFreq

Default: 40

Type: double

Specifies the frequency of the 1st stage lo-pass filter. If this parameter is equal to 0 the lo-pass filter is not used. If negative, then the absolute value is multiplied by the Nyquist frequency of the data to get the final corner frequency of the filter.

report.processing.spectra.taperLength

Default: -1

Unit: s

Type: double

Defines the cosine taper length in seconds if non-causal filters are activated applied on either side of the waveform. If a negative length is given 10 percent of the pre event window length is used on either side of the waveform.

report.processing.spectra.padLength

Default: -1

Unit: s

Type: double

The length of the zero padding window in seconds applied on either side of the waveform. If negative, it is computed following Boore (2005) as 1.5*order/corner_freq and applied half at the beginning and half at the end of the waveform.

report.processing.prs.damping

Default: 5

Unit: %

Type: double

Specifies the damping value (in percent) for computation of the pseudo absolute acceleration elastic response spectrum.

report.processing.prs.periods

Default: 0.3,1,3

Unit: s

Type: list:double

Specifies the natural periods for computation of the pseudo absolute acceleration elastic response spectrum.

report.processing.prs.Tmin

Default: -1

Unit: s

Type: double

The lower bound of the period range to compute response spectra for. A negative value disables the range and only the list of periods is used.

report.processing.prs.Tmax

Default: -1

Unit: s

Type: double

The upper bound of the period range to compute response spectra for. A negative value disables the range and only the list of periods is used.

report.processing.prs.naturalPeriods

Default: 0

Type: int

The number of natural periods that are created with linear spacing between Tmin and Tmax.

Command-Line 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 &.

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.

--print-component arg

For each log entry print the component right after the log level. By default the component output is enabled for file output but disabled for console 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 .

--trace

Execute in trace mode. Equivalent to --verbosity=4 --console=1 --print-component=1 --print-context=1 .

--log-file arg

Use alternative log file.

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 .

--db-disable

Do not use the database at all

Records

--record-driver-list

List all supported record stream drivers.

-I, --record-url arg

The recordstream source URL, format: [service://]location[#type]. "service" is the name of the recordstream driver which can be queried with "--record-driver-list". If "service" is not given, "file://" is used.

--record-file arg

Specify a file as record source.

--record-type arg

Specify a type for the records being read.