552 lines
		
	
	
		
			21 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			552 lines
		
	
	
		
			21 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
<?xml version="1.0" encoding="UTF-8"?>
 | 
						|
<seiscomp>
 | 
						|
	<module name="scmaster" category="Messaging">
 | 
						|
		<description>The messaging system</description>
 | 
						|
		<configuration>
 | 
						|
			<parameter name="defaultGroups" type="list:string" default="AMPLITUDE, PICK, LOCATION, MAGNITUDE, FOCMECH, EVENT, QC, PUBLICATION, GUI, INVENTORY, CONFIG, LOGGING, SERVICE_REQUEST, SERVICE_PROVIDE, STATUS_GROUP">
 | 
						|
				<description>
 | 
						|
				The default set of message groups for each queue. Only used
 | 
						|
				if a queues group list is unset (note: empty is not unset).
 | 
						|
				</description>
 | 
						|
			</parameter>
 | 
						|
			<parameter name="queues" type="list:string" default="production, playback">
 | 
						|
				<description>
 | 
						|
				Enable messaging queues defined as profile in queues. The profile
 | 
						|
				names are the final queue names.
 | 
						|
				</description>
 | 
						|
			</parameter>
 | 
						|
			<group name="interface">
 | 
						|
				<description>
 | 
						|
					Control the messaging interface. The default protocol is
 | 
						|
					"scmp" but "scmps" (secure protocol) is
 | 
						|
					used when valid SSL certificate and key are configured.
 | 
						|
				</description>
 | 
						|
				<parameter name="bind" type="ipbind" default="0.0.0.0:18180">
 | 
						|
					<description>
 | 
						|
						Local bind address and port of the messaging system.
 | 
						|
						0.0.0.0:18180 accepts connections from all clients,
 | 
						|
						127.0.0.1:18180 only from localhost.
 | 
						|
					</description>
 | 
						|
				</parameter>
 | 
						|
				<parameter name="acl" type="list:ipmask" default="">
 | 
						|
					<description>
 | 
						|
					The IP access control list for clients which are allowed
 | 
						|
					to connect to the interface. Separate each IP with a space
 | 
						|
					and put the entire list in double quotes, e.g.
 | 
						|
					"127.0.0.1 192.168.1.2 192.168.0.0/16".
 | 
						|
					</description>
 | 
						|
				</parameter>
 | 
						|
				<parameter name="socketPortReuse" type="boolean" default="true">
 | 
						|
					<description>
 | 
						|
					SO_REUSEADDR socket option for the TCP listening socket.
 | 
						|
					</description>
 | 
						|
				</parameter>
 | 
						|
				<group name="ssl">
 | 
						|
					<description>
 | 
						|
					SSL encryption is used if key and certificate are configured.
 | 
						|
					</description>
 | 
						|
					<parameter name="bind" type="ipbind" default="0.0.0.0:-1">
 | 
						|
						<description>
 | 
						|
						Additional local bind address and port of the messaging
 | 
						|
						system in case SSL encryption is active.
 | 
						|
						</description>
 | 
						|
					</parameter>
 | 
						|
					<parameter name="acl" type="list:ipmask" default="">
 | 
						|
						<description>
 | 
						|
						The IP access control list for clients which are allowed
 | 
						|
						to connect to the interface. See interface.acl for
 | 
						|
						further details.
 | 
						|
						</description>
 | 
						|
					</parameter>
 | 
						|
					<parameter name="socketPortReuse" type="boolean" default="true">
 | 
						|
						<description>
 | 
						|
						SO_REUSEADDR socket option for the TCP listening socket.
 | 
						|
						</description>
 | 
						|
					</parameter>
 | 
						|
					<parameter name="key" type="path" default="">
 | 
						|
						<description>
 | 
						|
 | 
						|
						</description>
 | 
						|
					</parameter>
 | 
						|
					<parameter name="certificate" type="path" default="">
 | 
						|
						<description>
 | 
						|
 | 
						|
						</description>
 | 
						|
					</parameter>
 | 
						|
					<parameter name="verifyPeer" type="boolean" default="false">
 | 
						|
						<description>
 | 
						|
						If enabled then the certificate of a connecting client
 | 
						|
						is verified against the servers certificate. It is
 | 
						|
						required that the client certificate is signed by the
 | 
						|
						server certificate otherwise the connection is refused.
 | 
						|
						</description>
 | 
						|
					</parameter>
 | 
						|
				</group>
 | 
						|
			</group>
 | 
						|
			<group name="queues">
 | 
						|
				<description>
 | 
						|
				Set the parameters for each messaging queue. The queues are used
 | 
						|
				when listed in the "queues" parameter. Several queues
 | 
						|
				can be used in parallel. For queues with without databases leave
 | 
						|
				the processor parameters empty.
 | 
						|
				</description>
 | 
						|
				<struct type="Queue" link="queues">
 | 
						|
					<parameter name="groups" type="list:string">
 | 
						|
						<description>
 | 
						|
						Define the list of message groups added to the queue.
 | 
						|
						If unset, then the defaultGroups will be used.
 | 
						|
						A queue will always add the default group "STATUS_GROUP".
 | 
						|
						This parameter overrides defaultGroups.
 | 
						|
						</description>
 | 
						|
					</parameter>
 | 
						|
					<parameter name="acl" type="list:ipmask" default="0.0.0.0/0">
 | 
						|
						<description>
 | 
						|
						The IP access control list for clients which are allowed
 | 
						|
						to join the queue. See interface.acl for further details.
 | 
						|
						</description>
 | 
						|
					</parameter>
 | 
						|
					<parameter name="maximumPayloadSize" type="int" unit="B" default="1048576">
 | 
						|
						<description>
 | 
						|
						The maximum size in bytes of a message to be accepted.
 | 
						|
						Clients which send larger messages will be disconnected.
 | 
						|
						The default is 1MB.
 | 
						|
						</description>
 | 
						|
					</parameter>
 | 
						|
					<parameter name="plugins" type="list:string">
 | 
						|
						<description>
 | 
						|
						List of plugins required by this queue. This is just a
 | 
						|
						convenience parameter to improve configurations
 | 
						|
						readability. The plugins can also be added to the
 | 
						|
						global list of module plugins.
 | 
						|
 | 
						|
						Example: dbstore
 | 
						|
						</description>
 | 
						|
					</parameter>
 | 
						|
 | 
						|
					<group name="processors">
 | 
						|
						<parameter name="messages" type="string">
 | 
						|
							<description>
 | 
						|
							Interface name. For now, use "dbstore"to
 | 
						|
							use a database.
 | 
						|
 | 
						|
							Use empty for testing or playbacks without a database.
 | 
						|
							</description>
 | 
						|
						</parameter>
 | 
						|
						<group name="messages">
 | 
						|
							<group name="dbstore">
 | 
						|
								<description>
 | 
						|
								Define the database connection parameters.
 | 
						|
								</description>
 | 
						|
								<parameter name="driver" type="string">
 | 
						|
									<description>
 | 
						|
									Selected the database driver to use.
 | 
						|
									Database drivers are available through plugins.
 | 
						|
									The default plugin is dbmysql which supports
 | 
						|
									the MYSQL database server. It is activated
 | 
						|
									with the core.plugins parameter.
 | 
						|
									</description>
 | 
						|
								</parameter>
 | 
						|
								<parameter name="read" type="string">
 | 
						|
									<description>
 | 
						|
									Set the database read connection which is
 | 
						|
									reported to clients that connect to this server.
 | 
						|
									If a remote setup should be implemented,
 | 
						|
									ensure that the hostname is reachable from
 | 
						|
									the remote computer.
 | 
						|
									</description>
 | 
						|
								</parameter>
 | 
						|
								<parameter name="write" type="string">
 | 
						|
									<description>
 | 
						|
									Set the database write connection which is
 | 
						|
									private to scmaster.
 | 
						|
									A separate write connection enables different
 | 
						|
									permissions on the database level for scmaster
 | 
						|
									and clients.
 | 
						|
									</description>
 | 
						|
								</parameter>
 | 
						|
								<parameter name="proxy" type="boolean" default="false">
 | 
						|
									<description>
 | 
						|
									If enabled then the database connection as configured
 | 
						|
									in 'read' is not being returned to the client
 | 
						|
									but the URL "proxy://". This URL
 | 
						|
									tells the client to open the database via the
 | 
						|
									websocket proxy at the messaging address,
 | 
						|
									e.g. http://localhost/production/db. The same
 | 
						|
									hostname and queue must be used as for the
 | 
						|
									initial messaging connection.
 | 
						|
									</description>
 | 
						|
								</parameter>
 | 
						|
								<parameter name="strictVersionMatch" type="boolean" default="true">
 | 
						|
									<description>
 | 
						|
									If enabled, the plugin will check the database
 | 
						|
									schema version and refuse to start if the
 | 
						|
									version doesn't match the latest version.
 | 
						|
									If disabled and the an object needs to be
 | 
						|
									stored, which is incompatible with the
 | 
						|
									database schema, this object is lost.
 | 
						|
									Leave this option enabled unless you know
 | 
						|
									exactly what are you doing and what the
 | 
						|
									consequences are.
 | 
						|
									</description>
 | 
						|
								</parameter>
 | 
						|
							</group>
 | 
						|
						</group>
 | 
						|
					</group>
 | 
						|
				</struct>
 | 
						|
			</group>
 | 
						|
			<group name="http">
 | 
						|
				<parameter name="filebase" type="path" default="@DATADIR@/scmaster/http/">
 | 
						|
					<description>
 | 
						|
					The directory served by the http server at staticPath.
 | 
						|
					</description>
 | 
						|
				</parameter>
 | 
						|
				<parameter name="staticPath" type="string" default="/">
 | 
						|
					<description>
 | 
						|
					The URL path at which html files and assets are available.
 | 
						|
					All files under filebase will be served at this URL path.
 | 
						|
					</description>
 | 
						|
				</parameter>
 | 
						|
				<parameter name="brokerPath" type="string" default="/">
 | 
						|
					<description>
 | 
						|
					The URL path at which the broker websocket is available.
 | 
						|
					</description>
 | 
						|
				</parameter>
 | 
						|
			</group>
 | 
						|
		</configuration>
 | 
						|
		<setup>
 | 
						|
			<group name="database">
 | 
						|
				<input name="enable" type="boolean" default="true">
 | 
						|
					<text>Enable database storage.</text>
 | 
						|
					<description>
 | 
						|
					Enable/disable the database.
 | 
						|
					If the database is not enabled, the processed data is not
 | 
						|
					stored persistently.
 | 
						|
					Leave this option enabled unless you know what you are doing.
 | 
						|
					</description>
 | 
						|
					<option value="false"/>
 | 
						|
					<option value="true">
 | 
						|
						<input name="backend" type="string" default="mysql/mariadb">
 | 
						|
							<text>Database backend</text>
 | 
						|
							<description>
 | 
						|
							SeisComP supports different database backends. Select
 | 
						|
							the one you want to use. Different backends require
 | 
						|
							different additional packages to be installed on your
 | 
						|
							host system.
 | 
						|
							</description>
 | 
						|
							<option value="mysql/mariadb">
 | 
						|
								<description>MySQL/MariaDB server.</description>
 | 
						|
								<input name="create" type="boolean" default="true">
 | 
						|
									<text>Create database</text>
 | 
						|
									<description>
 | 
						|
									If you already have a database and want to
 | 
						|
									reuse it, you can skip this step.
 | 
						|
									If you want to let setup create the database
 | 
						|
									for you, check this option.
 | 
						|
									</description>
 | 
						|
									<option value="true">
 | 
						|
										<input name="rootpw" type="string" echo="password">
 | 
						|
											<text>MYSQL root password.</text>
 | 
						|
											<description>
 | 
						|
											To create the database root access to
 | 
						|
											the database is required.
 | 
						|
											Please enter the root password to
 | 
						|
											the database server you are going to
 | 
						|
											use.
 | 
						|
											The server hostname will be entered
 | 
						|
											in the next steps.
 | 
						|
											</description>
 | 
						|
										</input>
 | 
						|
										<input name="runAsSuperUser" type="boolean" default="false">
 | 
						|
											<text>Run as super user.</text>
 | 
						|
											<description>
 | 
						|
											Activate this option to run the database
 | 
						|
											setup script with super user rights.
 | 
						|
											For instance, some MariaDB installation
 | 
						|
											do not allow root access per password
 | 
						|
											and require privileged system access.
 | 
						|
											</description>
 | 
						|
										</input>
 | 
						|
										<input name="drop" type="boolean" default="false">
 | 
						|
											<text>Drop existing database.</text>
 | 
						|
											<description>
 | 
						|
											When a database with the same name
 | 
						|
											exists already, should it be destroyed
 | 
						|
											and recreated?
 | 
						|
											If you say no here, an error will be
 | 
						|
											raised if the database to be created
 | 
						|
											already exists.
 | 
						|
											</description>
 | 
						|
										</input>
 | 
						|
										<input name="characterset" type="string" default="utf8mb4">
 | 
						|
											<text>Character set</text>
 | 
						|
											<description>
 | 
						|
											Selects the database character set which defaults to
 | 
						|
											the fully compatible "utf8mb4"
 | 
						|
											format. As this format is not supported
 | 
						|
											by older MySQL or MariaDB versions, select
 | 
						|
											"utf8" as fallback.
 | 
						|
											</description>
 | 
						|
											<option value="utf8mb4"/>
 | 
						|
											<option value="utf8"/>
 | 
						|
										</input>
 | 
						|
									</option>
 | 
						|
									<option value="false"/>
 | 
						|
								</input>
 | 
						|
								<input name="db" type="string" default="seiscomp">
 | 
						|
									<text>Database name.</text>
 | 
						|
									<description>
 | 
						|
									Database name to use.
 | 
						|
									If you want to avoid conflicts with existing
 | 
						|
									databases or if you have multiple installations,
 | 
						|
									change the default name.
 | 
						|
									If you are unsure, keep the default.
 | 
						|
									</description>
 | 
						|
								</input>
 | 
						|
								<input name="rwhost" type="string" default="localhost">
 | 
						|
									<text>Database hostname.</text>
 | 
						|
									<description>
 | 
						|
									The hostname of the computer running the
 | 
						|
									database server.
 | 
						|
									In most cases it is this computer (localhost).
 | 
						|
									This hostname is private and not published
 | 
						|
									to any client connection to this computer.
 | 
						|
									</description>
 | 
						|
								</input>
 | 
						|
								<input name="rwuser" type="string" default="sysop">
 | 
						|
									<text>Database read-write user.</text>
 | 
						|
									<description>
 | 
						|
									The database username for read-write access
 | 
						|
									to the database.
 | 
						|
									This account will not be visible to clients
 | 
						|
									connecting to your system unless read-only
 | 
						|
									and read-write accounts are not separated.
 | 
						|
									</description>
 | 
						|
								</input>
 | 
						|
								<input name="rwpwd" type="string" default="sysop">
 | 
						|
									<text>Database read-write password.</text>
 | 
						|
									<description>
 | 
						|
									The database user password for read-write
 | 
						|
									access to the database.
 | 
						|
									This account will not be visible to clients
 | 
						|
									connecting to your system unless read-only
 | 
						|
									and read-write accounts are not separated.
 | 
						|
									</description>
 | 
						|
								</input>
 | 
						|
								<input name="rohost" type="string" default="localhost">
 | 
						|
									<text>Database public hostname.</text>
 | 
						|
									<description>
 | 
						|
									The hostname of the computer running the
 | 
						|
									database server.
 | 
						|
									In most cases, it is this computer (localhost).
 | 
						|
									This hostname is sent to all connected clients
 | 
						|
									who in turn will try to resolve it.
 | 
						|
									If all modules run locally, you can leave
 | 
						|
									the defaults.
 | 
						|
									</description>
 | 
						|
								</input>
 | 
						|
								<input name="rouser" type="string" default="sysop">
 | 
						|
									<text>Database read-only user.</text>
 | 
						|
									<description>
 | 
						|
									The database user that will have read-only
 | 
						|
									access to the database.
 | 
						|
									This account will be visible to all clients
 | 
						|
									connecting to your system.
 | 
						|
									</description>
 | 
						|
								</input>
 | 
						|
								<input name="ropwd" type="string" default="sysop">
 | 
						|
									<text>Database read-only password.</text>
 | 
						|
									<description>
 | 
						|
									The database user password for read-only
 | 
						|
									access to the database.
 | 
						|
									This password will be visible to all clients
 | 
						|
									connecting to your system.
 | 
						|
									</description>
 | 
						|
								</input>
 | 
						|
							</option>
 | 
						|
							<option value="postgresql">
 | 
						|
								<description>
 | 
						|
								PostgresSQL server version 9 or later.
 | 
						|
								</description>
 | 
						|
								<input name="create" type="boolean" default="true">
 | 
						|
									<text>Create database</text>
 | 
						|
									<description>
 | 
						|
									If you already have a database and want to
 | 
						|
									reuse it, you can skip this step.
 | 
						|
									If you want to let setup create the database
 | 
						|
									for you, check this option.<br><br>
 | 
						|
									Note: By default, the PostgresSQL server do
 | 
						|
									not allow to login with username and password.
 | 
						|
									Due to this reason, the SeisComP scmaster
 | 
						|
									module can establish a connection after database
 | 
						|
									initialization. Please check the SeisComP
 | 
						|
									documentation how to change the server
 | 
						|
									configuration.
 | 
						|
									</description>
 | 
						|
									<option value="true">
 | 
						|
										<input name="drop" type="boolean" default="false">
 | 
						|
											<text>Drop existing database.</text>
 | 
						|
											<description>
 | 
						|
											When a database with the same name
 | 
						|
											exists already, should it be
 | 
						|
											destroyed and recreated?
 | 
						|
											If you say no here, an error will be
 | 
						|
											raised if the database to be created
 | 
						|
											already exists.
 | 
						|
											</description>
 | 
						|
										</input>
 | 
						|
									</option>
 | 
						|
									<option value="false"/>
 | 
						|
								</input>
 | 
						|
								<input name="db" type="string" default="seiscomp">
 | 
						|
									<text>Database name.</text>
 | 
						|
									<description>
 | 
						|
									Database name to use. If you want to avoid
 | 
						|
									conflicts with existing databases, or if you
 | 
						|
									have multiple installations, change the default
 | 
						|
									name. If you are unsure, keep the default.
 | 
						|
									</description>
 | 
						|
								</input>
 | 
						|
								<input name="rwhost" type="string" default="localhost">
 | 
						|
									<text>Database hostname.</text>
 | 
						|
									<description>
 | 
						|
									The hostname of the computer running the
 | 
						|
									database server.
 | 
						|
									In most cases it is this computer (localhost).
 | 
						|
									This hostname is private and not published to
 | 
						|
									any client connection to this computer.
 | 
						|
									</description>
 | 
						|
								</input>
 | 
						|
								<input name="rwuser" type="string" default="sysop">
 | 
						|
									<text>Database read-write user.</text>
 | 
						|
									<description>
 | 
						|
									The database username for read-write access
 | 
						|
									to the database.
 | 
						|
									This account will not be visible to clients
 | 
						|
									connecting to your system unless read-only
 | 
						|
									and read-write accounts are not separated.
 | 
						|
									</description>
 | 
						|
								</input>
 | 
						|
								<input name="rwpwd" type="string" default="sysop">
 | 
						|
									<text>Database read-write password.</text>
 | 
						|
									<description>
 | 
						|
									The database user password for read-write
 | 
						|
									access to the database.
 | 
						|
									This account will not be visible to clients
 | 
						|
									connecting to your system unless read-only
 | 
						|
									and read-write accounts are not separated.
 | 
						|
									</description>
 | 
						|
								</input>
 | 
						|
								<input name="rohost" type="string" default="localhost">
 | 
						|
									<text>Database public hostname.</text>
 | 
						|
									<description>
 | 
						|
									The hostname of the computer running the
 | 
						|
									database server.
 | 
						|
									In most cases it is this computer (localhost).
 | 
						|
									This hostname is sent to all connected clients
 | 
						|
									who in turn will try to resolve it.
 | 
						|
									If all modules run locally, you can leave the
 | 
						|
									defaults.
 | 
						|
									</description>
 | 
						|
								</input>
 | 
						|
								<input name="rouser" type="string" default="sysop">
 | 
						|
									<text>Database read-only user.</text>
 | 
						|
									<description>
 | 
						|
									The database user that will have read-only
 | 
						|
									access to the database.
 | 
						|
									This account will be visible to all clients
 | 
						|
									connecting to your system.
 | 
						|
									</description>
 | 
						|
								</input>
 | 
						|
								<input name="ropwd" type="string" default="sysop">
 | 
						|
									<text>Database read-only password.</text>
 | 
						|
									<description>
 | 
						|
									The database user password for read-only
 | 
						|
									access to the database.
 | 
						|
									This password will be visible to all clients
 | 
						|
									connecting to your system.
 | 
						|
									</description>
 | 
						|
								</input>
 | 
						|
							</option>
 | 
						|
							<option value="sqlite3">
 | 
						|
								<description>SQLite3 database.</description>
 | 
						|
								<input name="create" type="boolean" default="true">
 | 
						|
									<text>Create database</text>
 | 
						|
									<description>
 | 
						|
									If you already have a database and want to
 | 
						|
									reuse it, you can skip this step.
 | 
						|
									If you want to let setup create the database
 | 
						|
									for you, check this option.
 | 
						|
									</description>
 | 
						|
									<option value="true">
 | 
						|
										<input name="override" type="boolean" default="false">
 | 
						|
											<text>Override existing database file.</text>
 | 
						|
											<description>
 | 
						|
											When a database with the same name
 | 
						|
											exists already, should it be overriden?
 | 
						|
											If you say no here, an error will be
 | 
						|
											raised if the database to be created
 | 
						|
											already exists.
 | 
						|
											</description>
 | 
						|
										</input>
 | 
						|
									</option>
 | 
						|
									<option value="false"/>
 | 
						|
								</input>
 | 
						|
								<input name="filename" type="string" default="@ROOTDIR@/var/lib/seiscomp.db">
 | 
						|
									<text>Path to database file</text>
 | 
						|
									<description>
 | 
						|
									</description>
 | 
						|
								</input>
 | 
						|
							</option>
 | 
						|
						</input>
 | 
						|
					</option>
 | 
						|
				</input>
 | 
						|
			</group>
 | 
						|
		</setup>
 | 
						|
 | 
						|
		<command-line>
 | 
						|
			<synopsis>
 | 
						|
				scmaster [options]
 | 
						|
			</synopsis>
 | 
						|
			<group name="Generic">
 | 
						|
				<optionReference>generic#help</optionReference>
 | 
						|
				<optionReference>generic#version</optionReference>
 | 
						|
				<optionReference>generic#config-file</optionReference>
 | 
						|
				<optionReference>generic#plugins</optionReference>
 | 
						|
				<optionReference>generic#print-config-vars</optionReference>
 | 
						|
				<optionReference>generic#validate-schema-params</optionReference>
 | 
						|
				<optionReference>generic#dump-settings</optionReference>
 | 
						|
				<optionReference>generic#daemon</optionReference>
 | 
						|
			</group>
 | 
						|
 | 
						|
			<group name="Verbosity">
 | 
						|
				<optionReference>verbosity#verbosity</optionReference>
 | 
						|
				<optionReference>verbosity#v</optionReference>
 | 
						|
				<optionReference>verbosity#quiet</optionReference>
 | 
						|
				<optionReference>verbosity#component</optionReference>
 | 
						|
				<optionReference>verbosity#syslog</optionReference>
 | 
						|
				<optionReference>verbosity#lockfile</optionReference>
 | 
						|
				<optionReference>verbosity#console</optionReference>
 | 
						|
				<optionReference>verbosity#debug</optionReference>
 | 
						|
				<optionReference>verbosity#log-file</optionReference>
 | 
						|
				<optionReference>verbosity#print-context</optionReference>
 | 
						|
				<optionReference>verbosity#print-component</optionReference>
 | 
						|
				<optionReference>verbosity#log-utc</optionReference>
 | 
						|
				<optionReference>verbosity#trace</optionReference>
 | 
						|
			</group>
 | 
						|
 | 
						|
			<group name="Wired">
 | 
						|
				<option long-flag="bind" argument="arg">
 | 
						|
					<description>
 | 
						|
					The non-encrypted bind address. Format [ip:]port
 | 
						|
					</description>
 | 
						|
				</option>
 | 
						|
				<option long-flag="sbind" argument="arg">
 | 
						|
					<description>
 | 
						|
					The encrypted bind address. Format: [ip:]port
 | 
						|
					</description>
 | 
						|
				</option>
 | 
						|
			</group>
 | 
						|
		</command-line>
 | 
						|
	</module>
 | 
						|
</seiscomp>
 |