--- projects/cms/source/server/build/etc/system.conf 2001/03/22 01:05:45 1.44 +++ projects/cms/source/server/build/etc/system.conf 2002/10/12 21:56:37 1.68 @@ -6,7 +6,7 @@ # root of configuration # # $Author: tdb $ -# $Id: system.conf,v 1.44 2001/03/22 01:05:45 tdb Exp $ +# $Id: system.conf,v 1.68 2002/10/12 21:56:37 tdb Exp $ # ############################################################ #### Configuration Files & Groups @@ -50,6 +50,11 @@ Queue.SizeLimit=1000 # The removal algorithm Queue.RemoveAlgorithm=FIRST +# the time (in seconds) at which the XMLCache's contents +# will be rotated. in real terms, this means the minimum +# age at which an XMLPacket can be before it is deleted +# from the cache. +XMLCache.cleanupPeriod=30 ############################################################ #### FilterManager configuration @@ -58,8 +63,11 @@ Queue.RemoveAlgorithm=FIRST # The default port to listen for new host connections FilterManager.listenPort=4567 +# Access control list +FilterManager.ACL=DEFAULT:DENY;*.ukc.ac.uk:ALLOW;129.12.*:ALLOW + ############################################################ #### Filter configuration ############################################################ @@ -69,8 +77,8 @@ Filter.UDPListenPort=4589 Filter.TCPListenPort=4589 # Plugin Information -Filter.PluginsPackage=uk.org.iscream.filter.plugins -Filter.Plugins=TypeChecker;EnforceEssentialData +Filter.PluginsPackage=uk.org.iscream.cms.server.filter.plugins +Filter.Plugins=TypeChecker;EnforceEssentialData;SourceChecker;KeyChecker # The name for the root filter RootFilter.name=root @@ -78,8 +86,29 @@ RootFilter.name=root # The default parent filter (should almost always be the same as Filter.rootFilter) Filter.parentFilter=root +# The input methods to activate +# (comment or set to 0 to disable) +Filter.ActivateTCPReader=1 +Filter.ActivateUDPReader=1 +Filter.ActivateCORBAReader=1 +# Access control list for the TCP and UDP inputs +Filter.TCPACL=DEFAULT:DENY;*.ukc.ac.uk:ALLOW;129.12.*:ALLOW +Filter.UDPACL=DEFAULT:DENY;*.ukc.ac.uk:ALLOW;129.12.*:ALLOW +# Access control list for the SourceChecker plugin +# - packets not permitted by this ACL will be filtered +Filter.SourceCheckerPluginACL=DEFAULT:DENY;*.ukc.ac.uk:ALLOW;129.12.*:ALLOW + +# Enforce host authentication? +# (comment or set to 0 to disable) +Filter.EnforceHostAuth=1 + +# Length of keys to use in authentication +Filter.KeyLength=15 + + + ############################################################ #### Root filter interfaces configuration ############################################################ @@ -97,10 +126,25 @@ RootFilter.dbInterfaceName=database # The port for the client interface to listen on ClientInterface.listenPort=4510 +# The name for the client interface +ClientInterface.name=realtimeclients +# Access Control List for TCP Clients +ClientInterface.TCPControlChannelACL=DEFAULT:DENY;*.ukc.ac.uk:ALLOW;129.12.*:ALLOW +ClientInterface.TCPDataChannelACL=DEFAULT:DENY;*.ukc.ac.uk:ALLOW;129.12.*:ALLOW + ############################################################ +#### Database interface configuration +############################################################ + +# The name for the Database interface +DBInterface.name=database + + + +############################################################ #### Host Configuration ############################################################ @@ -110,10 +154,9 @@ Host.filter=computingFilter; # The default update times for a new host Host.UDPUpdateTime=10 Host.TCPUpdateTime=60 -Host.AveragerUpdateTime=5 # The services checks to run on a host -Host.serviceChecksPackage=uk.org.iscream.filter.plugins +Host.serviceChecksPackage=uk.org.iscream.cms.server.filter.plugins @@ -121,161 +164,105 @@ Host.serviceChecksPackage=uk.org.iscream.filter.plugin #### Monitor Configuration ############################################################ -# the monitors to run -Monitor.PluginsPackage=uk.org.iscream.client.monitors -Monitor.Plugins=CPU;Disk;Memory;Swap;Services;Heartbeat;WebFeeder; -#Monitor.Plugins=CPU;WebFeeder; -#Monitor.Plugins= +## The monitors to run +Monitor.PluginsPackage=uk.org.iscream.cms.server.client.monitors +Monitor.Plugins=CPU;Load;Process;Disk;Memory;Swap;Services;\ + Heartbeat;Queue;UserCount;WebFeeder; +## Default alert timeouts +# these can be override on a per-monitor basis +# timings of the alerts (in seconds) +Monitor.alertTimeout.NOTICE=60 +Monitor.alertTimeout.WARNING=900 +Monitor.alertTimeout.CAUTION=1800 +Monitor.alertTimeout.CRITICAL=3600 -## CPU monitor configuration -# threshold values +## Threshold values # # note: if the UPPER threshold is broken, # the alertTimeout values are halved. # This is to escalate the alert quicker. +# + +# CPU monitor threshold values Monitor.CPU.threshold.LOWER=90 Monitor.CPU.threshold.UPPER=99 -# timings of the alerts (in seconds) -Monitor.CPU.alertTimeout.NOTICE=60 -Monitor.CPU.alertTimeout.WARNING=900 -Monitor.CPU.alertTimeout.CAUTION=1800 -Monitor.CPU.alertTimeout.CRITICAL=3600 - -## Load monitor configuration -# threshold values -# -# note: if the UPPER threshold is broken, -# the alertTimeout values are halved. -# This is to escalate the alert quicker. +# Load monitor threshold values Monitor.Load.threshold.LOWER=10.0 Monitor.Load.threshold.UPPER=20.0 -# timings of the alerts (in seconds) -Monitor.Load.alertTimeout.NOTICE=60 -Monitor.Load.alertTimeout.WARNING=900 -Monitor.Load.alertTimeout.CAUTION=1800 -Monitor.Load.alertTimeout.CRITICAL=3600 - -## Process Count monitor configuration -# threshold values -# -# note: if the UPPER threshold is broken, -# the alertTimeout values are halved. -# This is to escalate the alert quicker. +# Process Count threshold values Monitor.Process.threshold.LOWER=1000 Monitor.Process.threshold.UPPER=1500 -# timings of the alerts (in seconds) -Monitor.Process.alertTimeout.NOTICE=60 -Monitor.Process.alertTimeout.WARNING=900 -Monitor.Process.alertTimeout.CAUTION=1800 -Monitor.Process.alertTimeout.CRITICAL=3600 - -## Memory monitor configuration -# threshold values -# -# note: if the UPPER threshold is broken, -# the alertTimeout values are halved. -# This is to escalate the alert quicker. +# Memory monitor threshold values Monitor.Memory.threshold.LOWER=80 Monitor.Memory.threshold.UPPER=90 +# Whether to include 'cache' in the 'free' value +# (1 is true, anything else is false) +Monitor.Memory.useCacheAsFree=1 -# timings of the alerts (in seconds) -Monitor.Memory.alertTimeout.NOTICE=60 -Monitor.Memory.alertTimeout.WARNING=900 -Monitor.Memory.alertTimeout.CAUTION=1800 -Monitor.Memory.alertTimeout.CRITICAL=3600 - -## Swap monitor configuration -# threshold values -# -# note: if the UPPER threshold is broken, -# the alertTimeout values are halved. -# This is to escalate the alert quicker. +# Swap monitor threshold values Monitor.Swap.threshold.LOWER=80 Monitor.Swap.threshold.UPPER=90 -# timings of the alerts (in seconds) -Monitor.Swap.alertTimeout.NOTICE=60 -Monitor.Swap.alertTimeout.WARNING=900 -Monitor.Swap.alertTimeout.CAUTION=1800 -Monitor.Swap.alertTimeout.CRITICAL=3600 +# UserCount monitor threshold values +Monitor.UserCount.threshold.LOWER=100 +Monitor.UserCount.threshold.UPPER=200 -## Disk monitor configuration -# threshold values -# -# note: if the UPPER threshold is broken, -# the alertTimeout values are halved. -# This is to escalate the alert quicker. + +# Disk monitor threshold values Monitor.Disk.threshold.LOWER=90 Monitor.Disk.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 -# timings of the alerts (in seconds) -Monitor.Disk.alertTimeout.NOTICE=60 -Monitor.Disk.alertTimeout.WARNING=900 -Monitor.Disk.alertTimeout.CAUTION=1800 -Monitor.Disk.alertTimeout.CRITICAL=3600 +# Queue monitor threshold values +Monitor.Queue.threshold.LOWER=50 +Monitor.Queue.threshold.UPPER=80 +# 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.Queue.thresholdMeasure=PERCENTAGE -## Services monitor configuration -# threshold values + +# Services monitor threshold values # # THE SERVICES MONITOR USES A HACK # WHEREBY IT USES THE SERVICE STATUS # AS THE THRESHOLD LEVEL. THIS SHOULD # BE LOOKED AT! # -# note: if the UPPER threshold is broken, -# the alertTimeout values are halved. -# This is to escalate the alert quicker. -#Monitor.Services.threshold.LOWER=120 -#Monitor.Services.threshold.LOWER=300 - -# timings of the alerts (in seconds) -Monitor.Services.alertTimeout.NOTICE=60 -Monitor.Services.alertTimeout.WARNING=900 -Monitor.Services.alertTimeout.CAUTION=1800 -Monitor.Services.alertTimeout.CRITICAL=3600 - -# Make sure we shut up eventually +# how many times we should be at the highest level before +# we go to a FINAL alert Monitor.Services.reachFINALcount=5 -## Heartbeat monitor configuration -# threshold values -# -# note: if the UPPER threshold is broken, -# the alertTimeout values are halved. -# This is to escalate the alert quicker. -Monitor.Heartbeat.checkPeriod=50 +# Heartbeat threshold values # these are values in seconds from when the heartbeat # was *expected* to arrive (ie. last + hearbeat period) -Monitor.Heartbeat.threshold.LOWER=120 +Monitor.Heartbeat.threshold.LOWER=180 Monitor.Heartbeat.threshold.UPPER=300 +# this is how often we will run a "check" of heartbeats +Monitor.Heartbeat.checkPeriod=50 +# how many times we should be at the highest level before +# we go to a FINAL alert +Monitor.Heartbeat.reachFINALcount=5 +# list of hosts we expect to have at startup +# this ensures we notice hosts that aren't running, not +# just those that have gone down recently. +Monitor.Heartbeat.initialHosts=raptor.ukc.ac.uk;myrtle.ukc.ac.uk;kestrel.ukc.ac.uk -# timings of the alerts (in seconds) -Monitor.Heartbeat.alertTimeout.NOTICE=60 -Monitor.Heartbeat.alertTimeout.WARNING=900 -Monitor.Heartbeat.alertTimeout.CAUTION=1800 -Monitor.Heartbeat.alertTimeout.CRITICAL=3600 -# this means it will reach a FINAL level, -# and thus the host will be removed from the monitor list, -# if the highest level alert is reached and occours this -# number of times. -# -# int this setup, that means 5 CRITICAL alerts would occour -# on a Heartbeat before reaching FINAL. -# If this value is wrong or not present, FINAL is never reached -# -Monitor.Heartbeat.reachFINALcount=5 ############################################################ #### Alerter Configuration @@ -294,12 +281,10 @@ Monitor.Heartbeat.reachFINALcount=5 # # alerters to run -Alerter.PluginsPackage=uk.org.iscream.client.alerters -#Alerter.Plugins=EMail;IRC;WebFeeder; -Alerter.Plugins=IRC;WebFeeder; -#Alerter.Plugins=WebFeeder; -#Alerter.Plugins= +Alerter.PluginsPackage=uk.org.iscream.cms.server.client.alerters +Alerter.Plugins=EMail;IRC;WebFeeder;Logging; + # EMail alerter configuration Alerter.EMail.level = WARNING Alerter.EMail.destList = dev@i-scream.org.uk @@ -315,7 +300,8 @@ Alerter.IRC.IRCServer = killigrew.ukc.ac.uk Alerter.IRC.IRCPort = 6667 Alerter.IRC.nickList = iscreamBot;_iscreamBot;i-screamBot Alerter.IRC.user = i-scream -Alerter.IRC.comment = i-scream alerting bot +Alerter.IRC.comment = i-scream alerting bot (based on PircBot) +Alerter.IRC.finger = i-scream alerting bot (based on PircBot) Alerter.IRC.channel = #i-scream Alerter.IRC.message = %level%: %attributeName% on %source% has passed %threshold%(%thresholdValue%) threshold with %value% - time till next alert (should one occur), %timeTillNextAlert% Alerter.IRC.reconnectDelay = 30 @@ -332,6 +318,13 @@ Alerter.IRC.versionCommand = version Alerter.IRC.helpCommand = help Alerter.IRC.rejectMessage = sorry, I don't understand your request + +# Logging alerter configuration +Alerter.Logging.level = WARNING +Alerter.Logging.message = %level%: %attributeName% on %source% has passed %threshold%(%thresholdValue%) threshold with %value% + + + ############################################################ #### WebFeeder Configuration ############################################################ @@ -342,7 +335,7 @@ WebFeeder.latestActive = true WebFeeder.alertActive = true # Only pass on alerts past this level -WebFeeder.alertLevel = OK +Alerter.WebFeeder.level = OK # Check period in seconds (for cleaning stale/old alerts) WebFeeder.checkPeriod = 120 @@ -362,5 +355,5 @@ WebFeeder.latestFileName = latest_data WebFeeder.alertSubDir = alert WebFeeder.alertFileName = alert_data -############################################################ +############################################################