490 lines
		
	
	
		
			8.9 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			490 lines
		
	
	
		
			8.9 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
.\" Man page generated from reStructuredText.
 | 
						|
.
 | 
						|
.
 | 
						|
.nr rst2man-indent-level 0
 | 
						|
.
 | 
						|
.de1 rstReportMargin
 | 
						|
\\$1 \\n[an-margin]
 | 
						|
level \\n[rst2man-indent-level]
 | 
						|
level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
 | 
						|
-
 | 
						|
\\n[rst2man-indent0]
 | 
						|
\\n[rst2man-indent1]
 | 
						|
\\n[rst2man-indent2]
 | 
						|
..
 | 
						|
.de1 INDENT
 | 
						|
.\" .rstReportMargin pre:
 | 
						|
. RS \\$1
 | 
						|
. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
 | 
						|
. nr rst2man-indent-level +1
 | 
						|
.\" .rstReportMargin post:
 | 
						|
..
 | 
						|
.de UNINDENT
 | 
						|
. RE
 | 
						|
.\" indent \\n[an-margin]
 | 
						|
.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
 | 
						|
.nr rst2man-indent-level -1
 | 
						|
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
 | 
						|
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
 | 
						|
..
 | 
						|
.TH "SCM" "1" "Oct 14, 2025" "6.9.1" "SeisComP"
 | 
						|
.SH NAME
 | 
						|
scm \- SeisComP Documentation
 | 
						|
.sp
 | 
						|
\fBProcess monitor.\fP
 | 
						|
.SH DESCRIPTION
 | 
						|
.sp
 | 
						|
scm monitors client activity. scm connects to a certain master and periodically
 | 
						|
processes the status messages sent by the clients.
 | 
						|
.sp
 | 
						|
Each client status if forwarded to the plugins loaded by scm. By default
 | 
						|
the \fI\%mncursesplugin\fP is loaded which presents an interface
 | 
						|
similar to the gnu program top.
 | 
						|
.SH FILTERS
 | 
						|
.sp
 | 
						|
Plugins might support filtering client status information. To configure filters
 | 
						|
each plugin supports a configuration value \fB$name.filter\fP\&. This filter
 | 
						|
is a string which can be constructed from available status info tags and logical
 | 
						|
and numerical operators.
 | 
						|
.sp
 | 
						|
List of tags:
 | 
						|
.INDENT 0.0
 | 
						|
.INDENT 3.5
 | 
						|
.sp
 | 
						|
.nf
 | 
						|
.ft C
 | 
						|
time
 | 
						|
privategroup
 | 
						|
hostname
 | 
						|
clientname
 | 
						|
ips
 | 
						|
programname
 | 
						|
pid
 | 
						|
cpuusage
 | 
						|
totalmemory
 | 
						|
clientmemoryusage
 | 
						|
memoryusage
 | 
						|
sentmessages
 | 
						|
receivedmessages
 | 
						|
messagequeuesize
 | 
						|
summedmessagequeuesize
 | 
						|
averagemessagequeuesize
 | 
						|
summedmessagesize
 | 
						|
averagemessagesize
 | 
						|
objectcount
 | 
						|
uptime
 | 
						|
responsetime
 | 
						|
.ft P
 | 
						|
.fi
 | 
						|
.UNINDENT
 | 
						|
.UNINDENT
 | 
						|
.sp
 | 
						|
A filter might look like this:
 | 
						|
.INDENT 0.0
 | 
						|
.INDENT 3.5
 | 
						|
.sp
 | 
						|
.nf
 | 
						|
.ft C
 | 
						|
memailplugin.filter = \(dq(cpuusage>100 || totalmemory>1000) && hostname==proc\-machine\(dq
 | 
						|
.ft P
 | 
						|
.fi
 | 
						|
.UNINDENT
 | 
						|
.UNINDENT
 | 
						|
.SS Numerical operators
 | 
						|
.sp
 | 
						|
Numerical operators are applied to a tag name and a constant value.
 | 
						|
.TS
 | 
						|
center;
 | 
						|
|l|l|.
 | 
						|
_
 | 
						|
T{
 | 
						|
Operator
 | 
						|
T}	T{
 | 
						|
Description
 | 
						|
T}
 | 
						|
_
 | 
						|
T{
 | 
						|
==
 | 
						|
T}	T{
 | 
						|
equal
 | 
						|
T}
 | 
						|
_
 | 
						|
T{
 | 
						|
!=
 | 
						|
T}	T{
 | 
						|
not equal
 | 
						|
T}
 | 
						|
_
 | 
						|
T{
 | 
						|
<
 | 
						|
T}	T{
 | 
						|
less than
 | 
						|
T}
 | 
						|
_
 | 
						|
T{
 | 
						|
>
 | 
						|
T}	T{
 | 
						|
greater than
 | 
						|
T}
 | 
						|
_
 | 
						|
T{
 | 
						|
<=
 | 
						|
T}	T{
 | 
						|
less or equal
 | 
						|
T}
 | 
						|
_
 | 
						|
T{
 | 
						|
>=
 | 
						|
T}	T{
 | 
						|
greater or equal
 | 
						|
T}
 | 
						|
_
 | 
						|
.TE
 | 
						|
.SS Logical operators
 | 
						|
.sp
 | 
						|
Logical operators are applied to a group (might be enclosed in brackets) or
 | 
						|
numerical expressions.
 | 
						|
.TS
 | 
						|
center;
 | 
						|
|l|l|.
 | 
						|
_
 | 
						|
T{
 | 
						|
Operator
 | 
						|
T}	T{
 | 
						|
Description
 | 
						|
T}
 | 
						|
_
 | 
						|
T{
 | 
						|
!
 | 
						|
T}	T{
 | 
						|
not
 | 
						|
T}
 | 
						|
_
 | 
						|
T{
 | 
						|
&&
 | 
						|
T}	T{
 | 
						|
and
 | 
						|
T}
 | 
						|
_
 | 
						|
T{
 | 
						|
||
 | 
						|
T}	T{
 | 
						|
or
 | 
						|
T}
 | 
						|
_
 | 
						|
.TE
 | 
						|
.SH MULTIPLE INSTANCES
 | 
						|
.sp
 | 
						|
To monitor different clients sets with different criteria and different plugins
 | 
						|
it is common practice to create aliases of scm and to configure each instance
 | 
						|
separately
 | 
						|
.INDENT 0.0
 | 
						|
.INDENT 3.5
 | 
						|
.sp
 | 
						|
.nf
 | 
						|
.ft C
 | 
						|
seiscomp alias create scm_level1 scm
 | 
						|
seiscomp alias create scm_level2 scm
 | 
						|
.ft P
 | 
						|
.fi
 | 
						|
.UNINDENT
 | 
						|
.UNINDENT
 | 
						|
.sp
 | 
						|
where \fBscm_level1\fP could monitor all mandatory clients whereas
 | 
						|
\fBscm_level2\fP monitors all clients which are not crucial for operation.
 | 
						|
.SH PLUGINS
 | 
						|
.INDENT 0.0
 | 
						|
.IP \(bu 2
 | 
						|
\fI\%email\fP
 | 
						|
.sp
 | 
						|
Email plugin for scm which sends emails based on client status.
 | 
						|
.IP \(bu 2
 | 
						|
\fI\%text\fP
 | 
						|
.sp
 | 
						|
Text output plugin for scm.
 | 
						|
.IP \(bu 2
 | 
						|
\fI\%ncurses\fP
 | 
						|
.sp
 | 
						|
Ncurses output plugin for scm which presents an interactive table of processes.
 | 
						|
.UNINDENT
 | 
						|
.SH MODULE CONFIGURATION
 | 
						|
.nf
 | 
						|
\fBetc/defaults/global.cfg\fP
 | 
						|
\fBetc/defaults/scm.cfg\fP
 | 
						|
\fBetc/global.cfg\fP
 | 
						|
\fBetc/scm.cfg\fP
 | 
						|
\fB~/.seiscomp/global.cfg\fP
 | 
						|
\fB~/.seiscomp/scm.cfg\fP
 | 
						|
.fi
 | 
						|
.sp
 | 
						|
.sp
 | 
						|
scm inherits \fI\%global options\fP\&.
 | 
						|
.SS email extension
 | 
						|
.sp
 | 
						|
Email plugin for scm which sends emails based on client status.
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B memailplugin.recipients
 | 
						|
Type: \fIlist:string\fP
 | 
						|
.sp
 | 
						|
Defines a comma separated list of email addresses to send
 | 
						|
notifications to.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B memailplugin.template
 | 
						|
Type: \fIstring\fP
 | 
						|
.sp
 | 
						|
Configures a custom message text that is appended to each message
 | 
						|
when clients passed the filter.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B memailplugin.filter
 | 
						|
Type: \fIstring\fP
 | 
						|
.sp
 | 
						|
Defines the filter for each client status. A filter is an expression
 | 
						|
that can be constructed with all available status tags (scm \-\-print\-tags)
 | 
						|
and logical and numerical operators. See scm for more information.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B memailplugin.requiredClients
 | 
						|
Type: \fIlist:string\fP
 | 
						|
.sp
 | 
						|
\fINo description available\fP
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B memailplugin.reportSilentClients
 | 
						|
Default: \fBtrue\fP
 | 
						|
.sp
 | 
						|
Type: \fIboolean\fP
 | 
						|
.sp
 | 
						|
\fINo description available\fP
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B memailplugin.reportSilentClientsTimeSpan
 | 
						|
Default: \fB1\fP
 | 
						|
.sp
 | 
						|
Type: \fIdouble\fP
 | 
						|
.sp
 | 
						|
Unit: \fImin\fP
 | 
						|
.sp
 | 
						|
\fINo description available\fP
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B memailplugin.reportRequiredClients
 | 
						|
Default: \fB10\fP
 | 
						|
.sp
 | 
						|
Type: \fIdouble\fP
 | 
						|
.sp
 | 
						|
Unit: \fImin\fP
 | 
						|
.sp
 | 
						|
\fINo description available\fP
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B memailplugin.filterMeanInterval
 | 
						|
Default: \fB10\fP
 | 
						|
.sp
 | 
						|
Type: \fIdouble\fP
 | 
						|
.sp
 | 
						|
Unit: \fImin\fP
 | 
						|
.sp
 | 
						|
\fINo description available\fP
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B memailplugin.sendEmail
 | 
						|
Default: \fBfalse\fP
 | 
						|
.sp
 | 
						|
Type: \fIboolean\fP
 | 
						|
.sp
 | 
						|
Enables sending of emails using mailx shell command.
 | 
						|
.UNINDENT
 | 
						|
.SS text extension
 | 
						|
.sp
 | 
						|
Text output plugin for scm.
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B mtextplugin.outputDir
 | 
						|
Default: \fB@LOGDIR@/scm/\fP
 | 
						|
.sp
 | 
						|
Type: \fIstring\fP
 | 
						|
.sp
 | 
						|
Output directory where [client].txt is written to. Additionally
 | 
						|
an file description.txt will be created to show the order of
 | 
						|
tags used in the client status file.
 | 
						|
.UNINDENT
 | 
						|
.SH COMMAND-LINE OPTIONS
 | 
						|
.sp
 | 
						|
\fBscm [options]\fP
 | 
						|
.SS Generic
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-h, \-\-help
 | 
						|
Show help message.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-V, \-\-version
 | 
						|
Show version information.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-\-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.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-\-plugins arg
 | 
						|
Load given plugins.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-D, \-\-daemon
 | 
						|
Run as daemon. This means the application will fork itself
 | 
						|
and doesn\(aqt need to be started with &.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-\-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).
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-\-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.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-\-shutdown\-master\-username arg
 | 
						|
Set the name of the master\-username of the messaging
 | 
						|
used for auto\-shutdown. If \(dqshutdown\-master\-module\(dq is
 | 
						|
given as well, this parameter is ignored.
 | 
						|
.UNINDENT
 | 
						|
.SS Verbosity
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-\-verbosity arg
 | 
						|
Verbosity level [0..4]. 0:quiet, 1:error, 2:warning, 3:info,
 | 
						|
4:debug.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-v, \-\-v
 | 
						|
Increase verbosity level (may be repeated, eg. \-vv).
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-q, \-\-quiet
 | 
						|
Quiet mode: no logging output.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-\-component arg
 | 
						|
Limit the logging to a certain component. This option can
 | 
						|
be given more than once.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-s, \-\-syslog
 | 
						|
Use syslog logging backend. The output usually goes to
 | 
						|
/var/lib/messages.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-l, \-\-lockfile arg
 | 
						|
Path to lock file.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-\-console arg
 | 
						|
Send log output to stdout.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-\-debug
 | 
						|
Execute in debug mode.
 | 
						|
Equivalent to \-\-verbosity=4 \-\-console=1 .
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-\-log\-file arg
 | 
						|
Use alternative log file.
 | 
						|
.UNINDENT
 | 
						|
.SS Messaging
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-u, \-\-user arg
 | 
						|
Overrides configuration parameter \fI\%connection.username\fP\&.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-H, \-\-host arg
 | 
						|
Overrides configuration parameter \fI\%connection.server\fP\&.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-t, \-\-timeout arg
 | 
						|
Overrides configuration parameter \fI\%connection.timeout\fP\&.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-g, \-\-primary\-group arg
 | 
						|
Overrides configuration parameter \fI\%connection.primaryGroup\fP\&.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-S, \-\-subscribe\-group arg
 | 
						|
A group to subscribe to.
 | 
						|
This option can be given more than once.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-\-content\-type arg
 | 
						|
Overrides configuration parameter \fI\%connection.contentType\fP\&.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-\-start\-stop\-msg arg
 | 
						|
Set sending of a start and a stop message.
 | 
						|
.UNINDENT
 | 
						|
.SS Monitor
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-c, \-\-clients list
 | 
						|
Comma separated list of clients to monitor.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-\-print\-tags
 | 
						|
Print available keys for accessing client info data and to
 | 
						|
build filter configurations.
 | 
						|
.UNINDENT
 | 
						|
.INDENT 0.0
 | 
						|
.TP
 | 
						|
.B \-\-no\-output\-plugins
 | 
						|
Do not use output plugins such as mncursesplugin.
 | 
						|
.UNINDENT
 | 
						|
.SH AUTHOR
 | 
						|
gempa GmbH, GFZ Potsdam
 | 
						|
.SH COPYRIGHT
 | 
						|
gempa GmbH, GFZ Potsdam
 | 
						|
.\" Generated by docutils manpage writer.
 | 
						|
.
 |