--- projects/cms/source/server/build/etc/system.conf 2003/02/24 20:18:45 1.71 +++ projects/cms/source/server/build/etc/system.conf 2004/08/01 10:40:39 1.77 @@ -10,9 +10,9 @@ # setup, aswell as a some example configuration. # # $Author: tdb $ -# $Id: system.conf,v 1.71 2003/02/24 20:18:45 tdb Exp $ +# $Id: system.conf,v 1.77 2004/08/01 10:40:39 tdb Exp $ # -# http://www.i-scream.org.uk/ +# http://www.i-scream.org/ # ############################################################ @@ -53,13 +53,7 @@ config.workstations=workstations.conf # Any hosts not specified by now have the default # config as given in this file. -# Another component of the system is the mySQL -# database part of the server call the DBInterface. -# This has it's own config so the passwords for the -# mySQL database can be kept seperate. -#config.mySQL=mySQL.conf - ############################################################ #### Misc system-wide configuration ############################################################ @@ -73,7 +67,7 @@ ConfigurationProxy.updateTime=60 # The internal Queue's can be monitored. This specifies # the interval, in seconds, at which their state should # be monitored. -Queue.MonitorInterval=15 +Queue.MonitorInterval=300 # The maximum size a Queue can be before items are # dropped when new ones arrive. Queue.SizeLimit=1000 @@ -126,10 +120,6 @@ Filter.PluginsPackage=uk.org.iscream.cms.server.filter # And the names of the plugins to be loaded. Filter.Plugins=TypeChecker;EnforceEssentialData;SourceChecker -# The special filter known as the "Root Filter" needs -# a name within the system. -RootFilter.name=root - # Every Filter, except the root, needs a parent to # send their data to. This is usually the root filter, # although in more complex setups it might be another @@ -161,16 +151,12 @@ Filter.SourceCheckerPluginACL=DEFAULT:ALLOW ############################################################ -#### Root filter interfaces configuration +#### Root filter configuration ############################################################ -# The Root FIlter can send data to various upstream -# data processors. There are two of these at present -# in the server - the DBInterface and the ClientInterface. -# Their component names are given here as defined below. -# (the DBInterface is switched off - commented - by default) -#RootFilter.dbInterfaceName=database -RootFilter.realtimeInterfaceName=realtimeclients +# The special filter known as the "Root Filter" needs +# a name within the system. +RootFilter.name=root ############################################################ @@ -180,10 +166,12 @@ RootFilter.realtimeInterfaceName=realtimeclients # The client interface listens for connections from clients # on a TCP port. It is specified here. ClientInterface.listenPort=4510 -# The component name for the Client Interface. This should -# match the name specified to the Root Filter above. -ClientInterface.name=realtimeclients +# The client interface needs to connect to another one to +# receive data. There is a special client interface in the +# root filter which is the top of the tree. +ClientInterface.parent=root + # The Client Interface has two channels, control and data. # Each of these can have an ACL for allowing connections. # As per previous examples in this configuration file they @@ -194,12 +182,11 @@ ClientInterface.TCPDataChannelACL=DEFAULT:ALLOW ############################################################ -#### Database interface configuration +#### LocalClient Configuration ############################################################ -# The name for the Database Interface. This should match -# the name given to the Root Filter. -DBInterface.name=database +# The parent for the Local Client +Client.parent=clientinterface1 ############################################################ @@ -211,8 +198,14 @@ DBInterface.name=database Host.filter=filter1; # Hosts send data every UDPUpdateTime, in seconds. -Host.UDPUpdateTime=10 +Host.UDPUpdateTime=60 +# How long a hosts config is valid for (a TTL effectively) +# after this time, in seconds, has passed a host should +# consider it's configuration invalid and check for a new +# configuration as soon as it can. +Host.ConfigTTL=3600 + # We can run service checks on a host. The java package # which contains them is specified here. Host.serviceChecksPackage=uk.org.iscream.cms.server.filter.plugins @@ -227,7 +220,8 @@ Host.serviceChecksPackage=uk.org.iscream.cms.server.fi Monitor.PluginsPackage=uk.org.iscream.cms.server.client.monitors # And which ones should be loaded. Monitor.Plugins=CPU;Load;Process;Disk;Memory;Swap;Services;\ - Heartbeat;Queue;UserCount;WebFeeder; + Heartbeat;Queue;UserCount;WebFeeder;DiskIO;\ + NetIO;Paging; # Alerts timeout after a given time in seconds and go up # to the next level. These can be overridden for monitors @@ -237,6 +231,9 @@ Monitor.alertTimeout.WARNING=900 Monitor.alertTimeout.CAUTION=1800 Monitor.alertTimeout.CRITICAL=3600 +# Is monitoring enabled? (comment or set to 0 to disable) +Monitor.enable=1 + ## Threshold values # # Here we specify the threshold for each monitor. When @@ -248,14 +245,26 @@ Monitor.alertTimeout.CRITICAL=3600 # CPU monitor threshold values Monitor.CPU.threshold.LOWER=90 Monitor.CPU.threshold.UPPER=95 +# enable this monitor (comment or set to 0 to disable) +Monitor.CPU.enable=1 # Load monitor threshold values Monitor.Load.threshold.LOWER=10.0 Monitor.Load.threshold.UPPER=20.0 +# enable this monitor (comment or set to 0 to disable) +Monitor.Load.enable=1 +# Paging monitor threshold values +Monitor.Paging.threshold.LOWER=1000 +Monitor.Paging.threshold.UPPER=5000 +# enable this monitor (comment or set to 0 to disable) +Monitor.Paging.enable=1 + # Process Count threshold values Monitor.Process.threshold.LOWER=500 Monitor.Process.threshold.UPPER=1000 +# enable this monitor (comment or set to 0 to disable) +Monitor.Process.enable=1 # Memory monitor threshold values Monitor.Memory.threshold.LOWER=80 @@ -263,23 +272,51 @@ Monitor.Memory.threshold.UPPER=90 # Whether to include 'cache' in the 'free' value # (1 is true, anything else is false) Monitor.Memory.useCacheAsFree=1 +# enable this monitor (comment or set to 0 to disable) +Monitor.Memory.enable=1 # Swap monitor threshold values Monitor.Swap.threshold.LOWER=80 Monitor.Swap.threshold.UPPER=90 +# enable this monitor (comment or set to 0 to disable) +Monitor.Swap.enable=1 # UserCount monitor threshold values Monitor.UserCount.threshold.LOWER=100 Monitor.UserCount.threshold.UPPER=200 +# enable this monitor (comment or set to 0 to disable) +Monitor.UserCount.enable=1 # Disk monitor threshold values Monitor.Disk.threshold.LOWER=90 Monitor.Disk.threshold.UPPER=95 +Monitor.DiskInode.threshold.LOWER=90 +Monitor.DiskInode.threshold.UPPER=95 # Thresholds given are PERCENTAGE or VALUE # where PERCENTAGE is a percentage of disk in use # and VALUE is an absolute value of space free Monitor.Disk.thresholdMeasure=PERCENTAGE +Monitor.DiskInode.thresholdMeasure=PERCENTAGE +# enable this monitor (comment or set to 0 to disable) +Monitor.Disk.enable=1 +Monitor.DiskInode.enable=1 +# DiskIO monitor threshold values (in bytes) +Monitor.DiskIO.rbytes.threshold.LOWER=10000000 +Monitor.DiskIO.rbytes.threshold.UPPER=50000000 +Monitor.DiskIO.wbytes.threshold.LOWER=10000000 +Monitor.DiskIO.wbytes.threshold.UPPER=50000000 +# enable this monitor (comment or set to 0 to disable) +Monitor.DiskIO.enable=1 + +# NetIO monitor threshold values (in bytes) +Monitor.NetIO.rxbytes.threshold.LOWER=10000000 +Monitor.NetIO.rxbytes.threshold.UPPER=50000000 +Monitor.NetIO.txbytes.threshold.LOWER=10000000 +Monitor.NetIO.txbytes.threshold.UPPER=50000000 +# enable this monitor (comment or set to 0 to disable) +Monitor.NetIO.enable=1 + # Queue monitor threshold values Monitor.Queue.threshold.LOWER=50 Monitor.Queue.threshold.UPPER=80 @@ -287,6 +324,8 @@ Monitor.Queue.threshold.UPPER=80 # where PERCENTAGE is a percentage of the queue in use # and VALUE is an absolute value of free space Monitor.Queue.thresholdMeasure=PERCENTAGE +# enable this monitor (comment or set to 0 to disable) +Monitor.Queue.enable=1 # Services monitor threshold values # @@ -313,6 +352,8 @@ Monitor.Heartbeat.reachFINALcount=5 # this ensures we notice hosts that aren't running, not # just those that have gone down recently. #Monitor.Heartbeat.initialHosts=importantserver.example.com;myserver.example.com +# enable this monitor (comment or set to 0 to disable) +Monitor.Heartbeat.enable=1 ############################################################