gss¶
Gempa Simulation Server
Description¶
The Gempa Simulation Server (GSS) provides tsunami simulations to TOAST. Different algorithms and approaches can be integrated via a plugin interface. Available plugins range from on-the-fly simulations to precomputed scenario databases.
Module Configuration¶
etc/defaults/global.cfg
etc/defaults/gss.cfg
etc/global.cfg
etc/gss.cfg
~/.seiscomp/global.cfg
~/.seiscomp/gss.cfg
gss 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
- GSS.database¶
Default:
@ROOTDIR@/var/lib/gss/archive/simulations.db
Type: string
Defines the database connection used to store GSS information like requests or computed simulations. By default the server uses SQlite3 as database backend and creates the database file automatically if it does not exist. Supported database backends: MySQL, PostgreSQL and SQLite3.
Examples: mysql://sysop:sysop@localhost/gss or postgresql://sysop:sysop@localhost/gss
- GSS.maxThreads¶
Default:
4
Type: int
Maximum number of threads that are created for all GSS sessions. This is a shared resource and if all threads are busy, new requests can only be answered when resources have been released again. The value depends on the use case and the available system resources. The default value fits for common use cases.
- GSS.port¶
Default:
19010
Type: int
Defines the server port for client requests. Use -1 to disable the port.
- GSS.profiles¶
Type: list:string
Registration of the simulation profiles. Simulation profiles can used to set predefined simulation parameters for a specific region and/or simulation backend.
- GSS.sessionTimeout¶
Default:
3600
Unit: s
Type: int
Sets the native protocol session timeout. If a session is inactive longer than this value the server closes the connection. The feature is used to prevent hanging TCP connections in poor network environments. Use -1 to disable the timeout.
- GSS.SSL.port¶
Default:
-1
Type: int
Defines the SSL server port for client requests. By default SSL requests are disabled. Recommended SSL port is 19011.
- GSS.SSL.certificate¶
Type: string
Defines the path to the SSL certificate to use.
- GSS.SSL.key¶
Type: string
Defines the path to the private SSL key to use. This key is not shared with clients.
- GSS.SSL.minVersion¶
Default:
TLSv1.2
Type: string
Sets the minimum supported protocol version, e.g., TLSv1.2 or TLSv1.3.
Requires OpenSSL 1.1.0 or newer.
- GSS.SSL.cipherList¶
Type: string
Sets the list of available ciphers for TLSv1.2 and below. The format of the cipherList and expamples are provided at detail at https://www.openssl.org/docs/man3.1/man1/openssl-ciphers.html , e.g. , ECDHE-RSA-AES256-GCM-SHA384:AES256-GCM-SHA384:AES256-SHA. The tool sslscan can be used to check the configured ciphers, e.g., sslscan --tls12 localhost:19443. The available ciphers can be listed with, e.g., openssl ciphers -tls1_2
- GSS.SSL.cipherSuites¶
Type: string
Sets the list of available ciphers for TLSv1.3 and above. The format and examples are provided at https://www.openssl.org/docs/man3.1/man1/openssl-ciphers.html , e.g. ,TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256. The tool sslscan can be used to check the configured ciphers, e.g., sslscan --tls13 localhost:19443. The available ciphers can be listed with openssl ciphers -tls1_3.
Requires OpenSSL 1.1.1 or newer.
- GSS.SSL.verifyPeer¶
Default:
false
Type: boolean
If this option is enabled clients must authenticate with an OpenSSL certificate which has been signed with the OpenSSL server certificate. Otherwise access is forbidden.
- GSS.http.port¶
Default:
-1
Type: int
Port to listen for HTTP request. Recommended HTTP port is 19080.
- GSS.http.additionalHeaders¶
Type: string:list
Comma separated list of additional HTTP headers added to HTTP responses, e.g., X-Frame-Options: DENY. This option can be used to implement custom HTTP security policies.
- GSS.http.maxThreads¶
Default:
4
Type: int
Maximum number of threads that are created for all HTTP sessions. This is a shared resource and if all threads are busy, new requests can only be answered when resources have been released again. The value depends on the use case and the available system resources. The default value fits for common use cases.
- GSS.https.port¶
Default:
-1
Type: int
Port to listen for HTTPS request. Recommended HTTPS port is 19443.
- GSS.path.media¶
Default:
@DATADIR@/gss/media
Type: path
Path to HTTP media files
Note
GSS.patches.* Configure settings for the automatic patches (rupture plane) generation.
- GSS.patches.width¶
Default:
50
Unit: km
Type: int
The patch width option is not used at this time.
- GSS.patches.depthMode¶
Default:
1
Type: int
Mode of the automatic depth correction. The following modes are available: 0 = Off, 1 = Adjust the depth to avoid negative z-top, 2 = Abort the patch generation in case of negative z-top
- GSS.patches.maxFaultDist¶
Default:
1
Unit: degree
Type: double
Maximum horizontal distance between epicenter and closest fault point allowed for automatic patch generation.
- GSS.patches.maxFootWallDist¶
Default:
-1
Unit: degree
Type: double
Deprecated: Maximum distance between epicenter and closest fault point if epicenter is on foot wall. Note that this parameter is deprecated, use ‘maxFaultDist’ instead.
- GSS.patches.maxHangingWallDist¶
Default:
-1
Unit: degree
Type: double
Deprecated: Maximum distance between epicenter and closest fault point if epicenter is on hanging wall. Note that this parameter is deprecated, use ‘maxFaultDist’ instead.
- GSS.patches.maxDip¶
Default:
80.0
Unit: degree
Type: double
Maximum dip in degree.
- GSS.patches.maxRakeVariance¶
Default:
20.0
Unit: degree
Type: double
Maximum variance of the rake from 90 degree.
- GSS.patches.extrapolateFault¶
Default:
false
Type: boolean
Selection of this option will extrapolate fault lines beyond their endpoints, so that they can provide patch generation information for epicenters otherwise not covered.
Note
GSS.profiles.* A list of simulation profile names which are taken into account when a simulation request is processed. For instance a specific bathymetry file can be defined which should be used for a specific region. The simulation request is extended by these parameters and already set parameters are not overidden. Register the profiles at ‘profiles’.
Note
GSS.profiles.$name.*
$name is a placeholder for the name to be used and needs to be added to profiles
to become active.
profiles = a,b
GSS.profiles.a.value1 = ...
GSS.profiles.b.value1 = ...
# c is not active because it has not been added
# to the list of profiles
GSS.profiles.c.value1 = ...
- GSS.profiles.$name.backend¶
Type: string
Name of the simulation backend, e.g., EasyWave2
- GSS.profiles.$name.aoi¶
Type: string
Path to BNA or JSON file defining an area of interst.
- GSS.profiles.$name.parameters¶
Type: list:string
A list of custom key-value items (separated by comma) which are forwarded to the backend. Example for EasyWave2: maxTime:120,gpu:true.
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.
Server¶
- --ssl-port int¶
Overrides configuration parameter
GSS.SSL.port
.