Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin


scrollbar


 What

nameofinstance.xml

Description

Configuration for the SystemMetrics module

schema location

http

https://

fews

fewsdocs.

wldelft

deltares.nl/schemas/version1.0/systemMetrics

.xsd

.xsd


Warning

The significant changes on the Delft-FEWS architecture for the 2017.02 roadmaps has rendered certain elements of the SystemMetrics from the McStatus section meaningless. In below configuration examples it is documented, which configuration elements have been removed from 2017.02 (see "no longer present in 2017.02 and later" comments on this page). Note that the SystemMetrics module uses the McStatusView and FssStatusView. Unfortunately these two views have not been available in all the delivered 2017.02 release packages. New versions of McStatusView and FssStatusView will be officially present in 2018.01 again. Ask Fews support if you need the McStatusView and FssStatusView in 2017.02 or use the view_creation script from the latest 2017.02 mc build.

In 2017.02 and later, please remove the following elements from the SystemMetrics module configuration file (parameters and filters should probably cleaned up as well) otherwise errors will be logged:

   <oclListenerParameterId>M.S.ocl</oclListenerParameterId>
   <fslListenerParameterId>M.S.fsl</fslListenerParameterId>
   <synchListenerParameterId>M.S.synchL</synchListenerParameterId>
   <synchRunnerParameterId>M.S.synchR</synchRunnerParameterId>
   <synchTaskListenerParameterId>M.S.synchTL</synchTaskListenerParameterId>
   <tmLauncherParameterId>M.S.tmLa</tmLauncherParameterId>        
   <tmChaserParameterId>M.S.tmC</tmChaserParameterId>
   <tmLogProcessorParameterId>M.S.tmLP</tmLogProcessorParameterId>
   <sysMonListenerParameterId>M.S.sysmL</sysMonListenerParameterId>
   <sysMonMonitorParameterId>M.S.sysmM</sysMonMonitorParameterId>
   <sysMonHeartbeatParameterId>M.S.sysmH</sysMonHeartbeatParameterId>


Warning

The significant changes on the Delft-FEWS architecture for the 2018.02 roadmaps has rendered the FssStatus section meaningless. In below configuration examples it is documented, which configuration elements have been removed from 2018.02 (see "no longer present in 2018.02 and later" comments on this page).

In 2018.02 and later, please remove the following elements from the SystemMetrics module configuration file (parameters and filters should probably cleaned up as well) otherwise errors will be logged:

<buildVersionParameterId>M.N.build</buildVersionParameterId>
<queueLengthParameterId>M.N.fsQL</queueLengthParameterId>
<downParameterId>M.N.fsDown</downParameterId>


Table of Contents

Introduction to SystemMetrics

The SystemMonitor in the client and the Admin Interface provide monitoring of the Delft-FEWS live system. In addition, the Delft-FEWS SystemMetrics module can be run regularly within a workflow to store several of these statistics as timeseries into the database. This workflow is only available in Direct Database Access mode (DDA), and should therefore be provided a workflow mapping to a DDA FSS. There are a number of configuration requirements when using SystemMetrics. It is required to define a dummy location and a number of qualifiers and parameters. Timeseries are stored in non-equidistant timestep: one value for every time the module runs. See the sample configuration below for reference.

Database rows and bytes (MB)

...

RegionConfigFiles - Parameters.xml

Div
styleoverflow: scroll;min-height: 200px; max-height: 300px;


Code Block
languagexml
<parameterGroups>
    
<parameterGroup id="SystemMetricsRows">
        
<parameterType>instantaneous</parameterType>
        
<unit>-</unit>
        <parameter id="M.N.db" name="Database">
            
<shortName>Database rows</shortName>
            <valueResolution>1</valueResolution>
        </parameter>
        
<parameter id="M.N.ts" name="TimeSeries">

            <shortName>Timeseries</shortName>
            <valueResolution>1</valueResolution>
        
</parameter>
        
<parameter id="M.N.tsO4w" name="TimeSeries 4 week old">
            
<shortName>TimeSeries</shortName>
            <valueResolution>1</valueResolution>
        
</parameter>
        <parameter id="M.N.tsE52w" name="TimeSeries stored at least a year">
            <shortName>TimeSeries Rows 1 year or more</shortName>
            
<valueResolution>1</valueResolution>
        
</parameter>
        
<parameter id="M.N.ws" name="WarmStates">
            <shortName>Warm states</shortName>
            
<valueResolution>1</valueResolution>
        
</parameter>
        <parameter id="M.N.wsE10d" name="WarmStates stored at least 10 days">
            
<shortName></shortName>
            
<valueResolution>1</valueResolution>
        
</parameter>
        
<parameter id="M.N.sa" name="Samples">
            <shortName>Samples</shortName>
            
<valueResolution>1</valueResolution>
        
</parameter>
        <parameter id="M.N.te" name="ThresholdEvents">
            
<shortName>ThresholdEvents</shortName>
            <valueResolution>1</valueResolution>
        
</parameter>
    </parameterGroup>
    <parameterGroup id="SystemMetricsMB">
        <parameterType>instantaneous</parameterType>
        
<unit>MB</unit>
        
<parameter id="M.B.db" name="Database MB">
            
<shortName>Database MB</shortName>
            
<valueResolution>1</valueResolution>
        </parameter>
        
<parameter id="M.B.ts" name="TimeSeries MB">
            <shortName>TimeSeries MB</shortName>
            <valueResolution>1</valueResolution>
        
</parameter>
        
<parameter id="M.B.tsE52w" name="TimeSeries MB stored at least a year">
            
<shortName>TimeSeries MB stored at least a year</shortName>
            <valueResolution>1</valueResolution>
        
</parameter>
        
<parameter id="M.B.wsE10d" name="WarmStates MB stored at least 10 days">
            <shortName>WarmStates stored at least 10 days</shortName>
            
<valueResolution>1</valueResolution>
        
</parameter>
        
<parameter id="M.B.tsO4w" name="TimeSeries MB 4 week old">
            <shortName>TimeSeries MB 4 week old</shortName>
            
<valueResolution>1</valueResolution>
        
</parameter>
        
<parameter id="M.B.ws" name="WarmStates">
            <shortName>Warm states MB</shortName>
<valueResolution>1</valueResolution>

            
<
<valueResolution>1</
parameter>
valueResolution>
        </
parameterGroup>
parameter>
    </parameterGroup>
    <parameterGroup id="SystemMetrics">
        
<parameterType>instantaneous</parameterType>
        
<unit>-</unit>
        <parameter id="M.N.err" name="Errors">
            
<shortName>Errors</shortName>
            <valueResolution>1</valueResolution>
        </parameter>
        
<parameter id="M.N.warn" name="Warnings">
            
<shortName>Warnings</shortName>
            
<valueResolution>1</valueResolution>
        </parameter>
        
<parameter id="M.N.cfgE" name="Config errors">
            <shortName>Config errors</shortName>
        
<shortName>Config errors</shortName>
    <valueResolution>1</valueResolution>
        </parameter>   
        <parameter id="M.N.cfgW" name="Config warnings">
            <shortName>Config 
<valueResolution>1<
warnings</
valueResolution>
shortName>
            
<
<valueResolution>1</
parameter>
valueResolution>
    
    </parameter>
        <parameter id="M.N.
cfgW
remMcs" name="
Config
Remote 
warnings
MCs">
            
<shortName>Config warnings<
<shortName>Remote MCs</shortName>
            <valueResolution>1</valueResolution>
        
</parameter>
        
<parameter id="M.N.
remMcs
tQL" name="
Remote
Task queue 
MCs
length">
            
<shortName>Remote MCs<
<shortName>TaskQueueLength</shortName>
            
<valueResolution>1</valueResolution>
        
</parameter>
        
<parameter id="M.N.
tQL
rt" name="
Task
Running 
queue length
tasks">
            <shortName>Running 
<shortName>TaskQueueLength<
tasks</shortName>
            
<valueResolution>1</valueResolution>
        
</parameter>
        <parameter id="M.N.
rt
ses" name="
Running
Active 
tasks
sessions">
        
<shortName>Running
 
tasks</shortName>
   <shortName>Active sessions</shortName>
            <valueResolution>1</valueResolution>
        
</parameter>
        
<parameter id="M.N.
ses
mccpts" name="
Active
MC 
sessions
components">
            
<shortName>Active sessions<
<shortName>MC Components</shortName>
            <valueResolution>1</valueResolution>
        </parameter>
        
<parameter id="M.
N
S.
mccpts
ocl" name="
MC components
OClistener">
            <shortName>OCL</shortName>
       
<shortName>MC
 
Components</shortName>
    <valueResolution>1</valueResolution>
        </parameter>
    
<valueResolution>1<
</
valueResolution>
parameterGroup>
    <parameterGroup id="SystemMetricsMCStatus">
        
<
<parameterType>instantaneous</
parameter>
parameterType>
        <unit>-</unit>
        <parameter id="M.S.
ocl
failO" name="
OClistener
Failed over">
            <shortName>Failover state</shortName>
    
<shortName>OCL</shortName>
        <valueResolution>1</valueResolution>
        
<valueResolution>1<
</
valueResolution>
parameter>
        <!-- only up 
</parameter> </parameterGroup>
to 2017.01, no longer present in 2017.02 and later !
        
<parameterGroup
<parameter id="
SystemMetricsMCStatus
M.S.fsl" name="FSListener">
            
<parameterType>instantaneous<
<shortName>FSL</
parameterType>
shortName>
            
<unit>-<
<valueResolution>1</
unit>
valueResolution>
        </parameter>
        <parameter id="M.S.
failO
synchL" name="
Failed over
SynchListener">
            
<shortName>Failover state<
<shortName>SynchListener</shortName>
            <valueResolution>1</valueResolution>
        
</parameter>
        
<parameter id="M.S.
fsl
synchR" name="
FSListener
SynchRunner">
            
<shortName>FSL<
<shortName>SynchRunner</shortName>
            
<valueResolution>1</valueResolution>
        </parameter>
        
<parameter id="M.S.
synchL
synchTL" name="
SynchListener
SynchTaskListener">
            
<shortName>SynchListener<
<shortName>SynchTaskListener</shortName>
            
<valueResolution>1</valueResolution>
        
</parameter>
        
<parameter id="M.S.
synchR
tmLa" name="
SynchRunner
TaskManagerLauncher">
            
<shortName>SynchRunner<
<shortName>Launcher</shortName>
            <valueResolution>1</valueResolution>
        
</parameter>
        
<parameter id="M.S.
synchTL
tmC" name="
SynchTaskListener
TaskManagerChaser">
            
<shortName>SynchTaskListener<
<shortName>Chaser</shortName>
            
<valueResolution>1</valueResolution>
        
</parameter>
        <parameter id="M.S.
tmLa
tmLP" name="
TaskManagerLauncher
TaskManagerLogProcessor">
            
<shortName>Launcher<
<shortName>LogProcessor</shortName>
            
<valueResolution>1</valueResolution>
        </parameter>
        
<parameter id="M.S.
tmC
sysmL" name="
TaskManagerChaser
SystemMonitorListener">
            
<shortName>Chaser<
<shortName>SystemMonitorListener</shortName>
            
<valueResolution>1</valueResolution>
        </parameter>
        <parameter id="M.S.
tmLP
sysmM" name="
TaskManagerLogProcessor
SystemMonitor">

            
<shortName>LogProcessor<
<shortName>SystemMonitor</shortName>
            
<valueResolution>1</valueResolution>
        
</parameter>
        
<parameter id="M.S.
sysmL
sysmH" name="
SystemMonitorListener
SystemMonitor hearbeat">
            
<shortName>SystemMonitorListener<
<shortName>SystemMonitorHeartbeat</shortName>
            <valueResolution>1</valueResolution>
        
</parameter>
<parameter id="M.S.sysmM" name="SystemMonitor"
 -->
    </parameterGroup>
	<!-- only up to 2018.01, no longer present in 2018.02 and later 
<shortName>SystemMonitor</shortName>
!
    <parameterGroup id="SystemMetricsFSS">
        
<valueResolution>1</valueResolution>
<parameterType>instantaneous</parameterType>
        
<unit>-</
parameter>
unit>
        
<parameter id="M.
S
N.
sysmH
build" name="
SystemMonitor
FSS build 
hearbeat
version">
            <shortName>FSS 
<shortName>SystemMonitorHeartbeat<
build</shortName>
            <valueResolution>1</valueResolution>
        </parameter>
        
</parameterGroup> <parameterGroup id="SystemMetricsFSS
<parameter id="M.N.fsQL" name="FSS queue length">
            <shortName>FSS 
<parameterType>instantaneous<
running</
parameterType>
shortName>
            
<unit>-<
<valueResolution>1</
unit>
valueResolution>
        </parameter>
        <parameter id="M.N.
build
fsDown" name="FSS 
build version"> <shortName>FSS build</shortName>
down">
            
<valueResolution>1<
<shortName>FSSDown</
valueResolution>
shortName>
            
<
<valueResolution>1</
parameter>
valueResolution>
        </parameter>
    </parameterGroup>    -->
</parameterGroups>



Set fssId as Forecasting Shell parameter fews.master.mcproxy.conf - before 2018.02

NB. The SystemMetrics module requires that the correct fssId is provided in the Forecasting Shell configuration, i.e. fews.master.mcproxy.conf. Ensure you've replaced the obsolete argument nl.wldelft.fews.system.synch.MasterControllerSynchroniserFactory and provide the fssId instead.

Code Block
   <forecastshell>
<parameter id="M.N.fsQL" name="FSS queue length">
                <shortName>FSS running</shortName><run path="d:/opt/mcs/FSS00/FewsShell/bin"/>
                <valueResolution>1</valueResolution>
            </parameter><jvm path="d:/opt/jre/bin/java">
            <parameter<arg id="M.N.fsDown0" namevalue="FSS down-Xmx1024M"/>
                <shortName>FSSDown</shortName>
                <valueResolution>1</valueResolution>
</jvm>
       <lib id="0" path="d:/opt/mcs/FSS00/FewsShell/bin"/>
     </parameter>
  <class name="nl.wldelft.fews.system.shellserver.ForecastingShell">
     </parameterGroup>    
  <arg  </parameterGroups>
id="0" value="FSS00"/>
			...

RegionConfigFiles - Qualifiers.xml

...

Code Block
languagexml
    <qualifier id="MC00"/>
    <qualifier id="MC01"/>
    <qualifier id="MC02"/>
   
    <qualifier id="MC01"/>
    <qualifier id="MC02"/>
<!-- before 2018.02, it was possible to collect system metrics per fss -->
<!--
    <qualifier id="FSS00"/>
    <qualifier id="FSS01"/>
    <qualifier id="FSS02"/>
    <qualifier id="FSS03"/>
--> 

RegionConfigFiles - Filters.xml

Div
styleoverflow: scroll;min-height: 200px; max-height: 300px;


Code Block
languagexml
    <filter id="SystemMetrics" name="SystemMetrics">
        <child foreignKey="systemMetricsRows"/>
        <child foreignKey="systemMetricsMB"/>
        <child foreignKey="systemMetricsLogEntries"/>
        <child foreignKey="systemMetricsMCStatus"/>
        <child foreignKey="systemMetricsMCComponents"/>
        <child foreignKey="systemMetricsFSSStatus"/>
    </filter>
    <filter id="systemMetricsRows" name="Rows">
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.N.te</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.N.tsO4w</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.N.tsE52w</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.N.ts</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.N.db</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.N.wsE10d</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.N.ws</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
    </filter>
    <filter id="systemMetricsMB" name="MB">
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.B.tsE52w</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.B.tsO4w</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.B.db</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.B.ts</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
    </filter>
    <filter id="systemMetricsLogEntries" name="LogEntries">
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.N.warn</parameterId>
            <qualifierId>MC00</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.N.cfgE</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.N.cfgW</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.N.err</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
    </filter>
    <filter id="systemMetricsMCStatus" name="Info">
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.N.mccpts</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.N.remMcs</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.N.rt</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.N.tQL</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        
<timeSeriesSet>
<!--timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.N.fsQL</parameterId>
            <qualifierId>FSS00</qualifierId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </
timeSeriesSet>
timeSeriesSet-->
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.N.ses</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
    </filter>
<filter id="systemMetricsMCComponents" name="Status">

    <filter id="systemMetricsMCComponents" name="Status">
     <!-- Only usable up to 2017.01, no longer present in 2017.02 and later !
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.S.fsl</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>-->
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.S.failO</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
     <!-- Only usable up to 2017.01, 
<timeSeriesSet>
no longer present in 2017.02 and later !
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.S.synchTL</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.S.synchL</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.S.tmLP</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.S.sysmM</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.S.synchR</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.S.ocl</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.S.sysmH</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.S.tmLa</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.S.sysmL</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.S.tmC</parameterId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet> -->
    </filter>
 <!-- Only usable up to 2018.01, no longer present in 2018.02 and later !
    <filter id="systemMetricsFSSStatus" name="FSS">
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.N.build</parameterId>
            <qualifierId>FSS00</qualifierId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
            <synchLevel>1</synchLevel>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.N.fsDown</parameterId>
            <qualifierId>FSS00</qualifierId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
        </timeSeriesSet>
        <timeSeriesSet>
            <moduleInstanceId>SystemMetrics</moduleInstanceId>
            <valueType>scalar</valueType>
            <parameterId>M.N.fsQL</parameterId>
            <qualifierId>FSS01</qualifierId>
            <qualifierId>MC02</qualifierId>
            <locationId>metrics</locationId>
            <timeSeriesType>external historical</timeSeriesType>
            <timeStep unit="nonequidistant"/>
            <readWriteMode>read complete forecast</readWriteMode>
        </timeSeriesSet>
    </filter> -->



RegionConfigFiles - WorkflowDescriptors.xml

...

Code Block
xml
xml
<?xml version="1.0" encoding="UTF-8"?>
<workflow version="1.1" xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.wldelft.nl/fews httphttps://fewsfewsdocs.wldelftdeltares.nl/schemas/version1.0/workflow.xsd">
    <activity>
        <moduleInstanceId>SystemMetrics</moduleInstanceId>
    </activity>
</workflow>

ModuleConfigFiles

xml
Div
styleoverflow: scroll;min-height: 200px; max-height: 300px;


Code Block
languagexml
<?xml version="1.0" encoding="UTF-8"?>
<systemMetrics xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.wldelft.nl/fews 
http
https://
fews
fewsdocs.
wldelft
deltares.nl/schemas/version1.0/systemMetrics.xsd">
    <general>
        <locationId>metrics</locationId>
		<synchLevel>1</synchLevel>
    </general>
    <!-- Database total record and byte count -->
    <database>
        <rowCountParameterId>M.N.db</rowCountParameterId>
        <byteCountParameterId>M.B.db</byteCountParameterId>
    </database>
    <!-- TimeSeries record and byte count -->
    <!-- When SystemMetrics is run between an ImportAmalgamate and MC_MarkedRecordManager / MC_RollingBarrel spikes are to be expected -->
    <table>
        <tableName>TimeSeries</tableName>
        <rowCountParameterId>M.N.ts</rowCountParameterId>        
        <byteCountParameterId>M.B.ts</byteCountParameterId>
    </table>
    <!-- When SystemMetrics is run between an ImportAmalgamate and MC_MarkedRecordManager / MC_RollingBarrel spikes are to be expected -->
    <table>
        <tableName>TimeSeries</tableName>
        <rowCountParameterId>M.N.tsO4w</rowCountParameterId>        
        <byteCountParameterId>M.B.tsO4w</byteCountParameterId>
        <maximalAge unit="day" multiplier="4"/>
    </table>
    <!-- TimeSeries records with an expiry time over longer than 52 weeks -->
    <!-- When SystemMetrics is run between an ImportAmalgamate and MC_MarkedRecordManager / MC_RollingBarrel spikes are to be expected -->
    <table>
        <tableName>TimeSeries</tableName>
        <rowCountParameterId>M.N.tsE52w</rowCountParameterId>        
        <byteCountParameterId>M.B.tsE52w</byteCountParameterId>
        <lifeSpan unit="week" multiplier="52" />
    </table>
    <!-- WarmStates record and byte count -->
    <table>
        <tableName>WarmStates</tableName>
        <rowCountParameterId>M.N.ws</rowCountParameterId>        
        <!-- uncomment when WarmStates are stored in the database, not external on disk)-->
        <!--  <byteCountParameterId>B.ws</byteCountParameterId> -->
    </table>
    <table>
        <tableName>WarmStates</tableName>
        <rowCountParameterId>M.N.wsE10d</rowCountParameterId>        
        <!-- uncomment when WarmStates are stored in the database, not external on disk)-->
        <!-- <byteCountParameterId>M.NB.wse10d</byteCountParameterId> -->
        <lifeSpan unit="day" multiplier="10" />
    </table>
    <!-- Samples record count -->
    <!-- uncomment when Samples are used -->
    <!--  <table>
        <tableName>Samples</tableName>
        <rowCountParameterId>M.N.sa</rowCountParameterId>
    </table>
    -->
    <!-- ThresholdEvents record count -->
    <table>
        <tableName>ThresholdEvents</tableName>
        <rowCountParameterId>M.N.te</rowCountParameterId>
    </table>
    <!-- Counts the number of errors -->
    <logEntry>
        <rowCountParameterId>M.N.err</rowCountParameterId>
        <logLevel>ERROR</logLevel>
    </logEntry>
    <logEntry>
        <rowCountParameterId>M.N.warn</rowCountParameterId>
        <logLevel>WARN</logLevel>
    </logEntry>
    <!-- Counts the log entries with event code Config.Error -->
    <logEntry>
        <rowCountParameterId>M.N.cfgE</rowCountParameterId>
        <eventCode>Config.Error</eventCode>
    </logEntry>
    <logEntry>
        <rowCountParameterId>M.N.cfgW</rowCountParameterId>
        <eventCode>Config.Warn</eventCode>
    </logEntry>
    <mcStatus>
        <failedOverParameterId>M.S.failO</failedOverParameterId>
        <aliveRemoteMcCountParameterId>M.N.remMcs</aliveRemoteMcCountParameterId>
        <taskQueueLengthParameterId>M.N.tQL</taskQueueLengthParameterId>
        <activeTasksCountParameterId>M.N.rt</activeTasksCountParameterId>        
        <ocSessionsCountParameterId>M.N.ses</ocSessionsCountParameterId>
        <liveComponentCountParameterId>M.N.mccpts</liveComponentCountParameterId>        
<!-- Only usable up to 2017.01, no longer present in 2017.02 and later ! 
        <oclListenerParameterId>M.S.ocl</oclListenerParameterId>
        <fslListenerParameterId>M.S.fsl</fslListenerParameterId>
        <synchListenerParameterId>M.S.synchL</synchListenerParameterId>
        <synchRunnerParameterId>M.S.synchR</synchRunnerParameterId>
        <synchTaskListenerParameterId>M.S.synchTL</synchTaskListenerParameterId>
        <tmLauncherParameterId>M.S.tmLa</tmLauncherParameterId>        
        <tmChaserParameterId>M.S.tmC</tmChaserParameterId>
        <tmLogProcessorParameterId>M.S.tmLP</tmLogProcessorParameterId>
        <sysMonListenerParameterId>M.S.sysmL</sysMonListenerParameterId>
        <sysMonMonitorParameterId>M.S.sysmM</sysMonMonitorParameterId>
        <sysMonHeartbeatParameterId>M.S.sysmH</sysMonHeartbeatParameterId> -->
    </mcStatus>
<!-- Only usable up to 2018.01, no longer present in 2018.02 and later ! 
    <fssStatus>
        <buildVersionParameterId>M.N.build</buildVersionParameterId>
        <queueLengthParameterId>M.N.fsQL</queueLengthParameterId>
        <downParameterId>M.N.fsDown</downParameterId>
    </fssStatus> --> 
</systemMetrics>