| 7 |  | # | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 8 |  | # $Author$ | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 9 |  | # $Id$ | 
 
 
 
 
 
 
 
 | 10 | + | # | 
 
 
 
 
 
 
 
 | 11 | + | ############################################################ | 
 
 
 
 
 
 
 
 | 12 | + | #### Configuration Files & Groups | 
 
 
 
 
 
 
 
 | 13 | + | ############################################################ | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 14 |  |  | 
 
 
 
 
 
 
 
 
 
 
 | 15 | < | # FilterManager configuration | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 15 | > | # for computing machines | 
 
 
 
 
 | 16 | > | group.computing=Host.129.12.4.*; | 
 
 
 
 
 | 17 | > | group.rocks=Host.agate.ukc.ac.uk;Host.arkose.ukc.ac.uk;Host.basalt.ukc.ac.uk;Host.chalk.ukc.ac.uk;\ | 
 
 
 
 
 | 18 | > | Host.chert.ukc.ac.uk;Host.granite.ukc.ac.uk;Host.jade.ukc.ac.uk;Host.jasper.ukc.ac.uk;\ | 
 
 
 
 
 | 19 | > | Host.magnetite.ukc.ac.uk;Host.obsidian.ukc.ac.uk;Host.pumice.ukc.ac.uk;\ | 
 
 
 
 
 | 20 | > | Host.pyrite.ukc.ac.uk;Host.slate.ukc.ac.uk;Host.topaz.ukc.ac.uk; | 
 
 
 
 
 | 21 | > | group.compsoc=Host.compsoc1.ukc.ac.uk | 
 
 
 
 
 
 
 
 
 
 
 | 22 |  |  | 
 
 
 
 
 
 
 
 | 23 | + | config.computing=computing.conf | 
 
 
 
 
 
 
 
 | 24 | + | config.rocks=rocks.conf | 
 
 
 
 
 
 
 
 | 25 | + | config.compsoc1=rocks.conf | 
 
 
 
 
 
 
 
 | 26 | + |  | 
 
 
 
 
 
 
 
 | 27 | + | # for library machines | 
 
 
 
 
 
 
 
 | 28 | + | group.library=Host.129.12.58.*; | 
 
 
 
 
 
 
 
 | 29 | + | config.library=library.conf | 
 
 
 
 
 
 
 
 | 30 | + |  | 
 
 
 
 
 
 
 
 | 31 | + | # for SSB machines | 
 
 
 
 
 
 
 
 | 32 | + | group.ssb=Host.stue*.ukc.ac.uk; | 
 
 
 
 
 
 
 
 | 33 | + | config.ssb=ssb.conf | 
 
 
 
 
 
 
 
 | 34 | + |  | 
 
 
 
 
 
 
 
 | 35 | + | # mySQL configuration | 
 
 
 
 
 
 
 
 | 36 | + | config.mySQL=mySQL.conf | 
 
 
 
 
 
 
 
 | 37 | + |  | 
 
 
 
 
 
 
 
 | 38 | + | ############################################################ | 
 
 
 
 
 
 
 
 | 39 | + | #### Misc system-wide configuration | 
 
 
 
 
 
 
 
 | 40 | + | ############################################################ | 
 
 
 
 
 
 
 
 | 41 | + |  | 
 
 
 
 
 
 
 
 | 42 | + | # the time (in seconds) that checks should be made for | 
 
 
 
 
 
 
 
 | 43 | + | # changes in configuration | 
 
 
 
 
 
 
 
 | 44 | + | ConfigurationProxy.updateTime=60 | 
 
 
 
 
 
 
 
 | 45 | + |  | 
 
 
 
 
 
 
 
 | 46 | + | # The time interval at which the Queue's should be monitored | 
 
 
 
 
 
 
 
 | 47 | + | Queue.MonitorInterval=15 | 
 
 
 
 
 
 
 
 | 48 | + | # The upper limit for a Queue | 
 
 
 
 
 
 
 
 | 49 | + | Queue.SizeLimit=1000 | 
 
 
 
 
 
 
 
 | 50 | + | # The removal algorithm | 
 
 
 
 
 
 
 
 | 51 | + | Queue.RemoveAlgorithm=FIRST | 
 
 
 
 
 
 
 
 | 52 | + |  | 
 
 
 
 
 
 
 
 | 53 | + |  | 
 
 
 
 
 
 
 
 | 54 | + | ############################################################ | 
 
 
 
 
 
 
 
 | 55 | + | #### FilterManager configuration | 
 
 
 
 
 
 
 
 | 56 | + | ############################################################ | 
 
 
 
 
 
 
 
 | 57 | + |  | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 58 |  | # The default port to listen for new host connections | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 59 |  | FilterManager.listenPort=4567 | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 60 |  |  | 
 
 
 
 
 
 
 
 | 61 | + | # Access control list | 
 
 
 
 
 
 
 
 | 62 | + | FilterManager.ACL=DEFAULT:DENY;*.ukc.ac.uk:ALLOW;129.12.*:ALLOW | 
 
 
 
 
 
 
 
 | 63 | + |  | 
 
 
 
 
 
 
 
 | 64 | + |  | 
 
 
 
 
 
 
 
 | 65 | + |  | 
 
 
 
 
 
 
 
 | 66 | + | ############################################################ | 
 
 
 
 
 
 
 
 | 67 | + | #### Filter configuration | 
 
 
 
 
 
 
 
 | 68 | + | ############################################################ | 
 
 
 
 
 
 
 
 | 69 | + |  | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 70 |  | # The default port for Filter's to listen on | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 71 |  | Filter.UDPListenPort=4589 | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 72 |  | Filter.TCPListenPort=4589 | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 73 |  |  | 
 
 
 
 
 
 
 
 | 74 | + | # Plugin Information | 
 
 
 
 
 
 
 
 | 75 | + | Filter.PluginsPackage=uk.org.iscream.cms.server.filter.plugins | 
 
 
 
 
 
 
 
 | 76 | + | Filter.Plugins=TypeChecker;EnforceEssentialData;SourceChecker;KeyChecker | 
 
 
 
 
 
 
 
 | 77 | + |  | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 78 |  | # The name for the root filter | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 79 |  | RootFilter.name=root | 
 
 
 
 
 
 
 
 | 80 | + |  | 
 
 
 
 
 
 
 
 | 81 | + | # The default parent filter (should almost always be the same as Filter.rootFilter) | 
 
 
 
 
 
 
 
 | 82 | + | Filter.parentFilter=root | 
 
 
 
 
 
 
 
 | 83 | + |  | 
 
 
 
 
 
 
 
 | 84 | + | # The input methods to activate | 
 
 
 
 
 
 
 
 | 85 | + | # (comment or set to 0 to disable) | 
 
 
 
 
 
 
 
 | 86 | + | Filter.ActivateTCPReader=1 | 
 
 
 
 
 
 
 
 | 87 | + | Filter.ActivateUDPReader=1 | 
 
 
 
 
 
 
 
 | 88 | + | Filter.ActivateCORBAReader=1 | 
 
 
 
 
 
 
 
 | 89 | + |  | 
 
 
 
 
 
 
 
 | 90 | + | # Access control list for the TCP and UDP inputs | 
 
 
 
 
 
 
 
 | 91 | + | Filter.TCPACL=DEFAULT:DENY;*.ukc.ac.uk:ALLOW;129.12.*:ALLOW | 
 
 
 
 
 
 
 
 | 92 | + | Filter.UDPACL=DEFAULT:DENY;*.ukc.ac.uk:ALLOW;129.12.*:ALLOW | 
 
 
 
 
 
 
 
 | 93 | + |  | 
 
 
 
 
 
 
 
 | 94 | + | # Access control list for the SourceChecker plugin | 
 
 
 
 
 
 
 
 | 95 | + | #   - packets not permitted by this ACL will be filtered | 
 
 
 
 
 
 
 
 | 96 | + | Filter.SourceCheckerPluginACL=DEFAULT:DENY;*.ukc.ac.uk:ALLOW;129.12.*:ALLOW | 
 
 
 
 
 
 
 
 | 97 | + |  | 
 
 
 
 
 
 
 
 | 98 | + | # Enforce host authentication? | 
 
 
 
 
 
 
 
 | 99 | + | # (comment or set to 0 to disable) | 
 
 
 
 
 
 
 
 | 100 | + | Filter.EnforceHostAuth=1 | 
 
 
 
 
 
 
 
 | 101 | + |  | 
 
 
 
 
 
 
 
 | 102 | + |  | 
 
 
 
 
 
 
 
 | 103 | + |  | 
 
 
 
 
 
 
 
 | 104 | + | ############################################################ | 
 
 
 
 
 
 
 
 | 105 | + | #### Root filter interfaces configuration | 
 
 
 
 
 
 
 
 | 106 | + | ############################################################ | 
 
 
 
 
 
 
 
 | 107 | + |  | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 108 |  | # Comment either of these (or delete them) and | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 109 |  | # that interface won't be started | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 110 |  | RootFilter.realtimeInterfaceName=realtimeclients | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 111 |  | RootFilter.dbInterfaceName=database | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 112 |  |  | 
 
 
 
 
 
 
 
 | 113 | + |  | 
 
 
 
 
 
 
 
 | 114 | + |  | 
 
 
 
 
 
 
 
 | 115 | + | ############################################################ | 
 
 
 
 
 
 
 
 | 116 | + | #### Client interface configuration | 
 
 
 
 
 
 
 
 | 117 | + | ############################################################ | 
 
 
 
 
 
 
 
 | 118 | + |  | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 119 |  | # The port for the client interface to listen on | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 120 |  | ClientInterface.listenPort=4510 | 
 
 
 
 
 
 
 
 | 121 | + | # The name for the client interface | 
 
 
 
 
 
 
 
 | 122 | + | ClientInterface.name=realtimeclients | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 123 |  |  | 
 
 
 
 
 
 
 
 
 
 
 | 124 | < | # The default parent filter (should almost always be the same as Filter.rootFilter) | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 125 | < | Filter.parentFilter=root | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 124 | > | # Access Control List for TCP Clients | 
 
 
 
 
 | 125 | > | ClientInterface.TCPControlChannelACL=DEFAULT:DENY;*.ukc.ac.uk:ALLOW;129.12.*:ALLOW | 
 
 
 
 
 | 126 | > | ClientInterface.TCPDataChannelACL=DEFAULT:DENY;*.ukc.ac.uk:ALLOW;129.12.*:ALLOW | 
 
 
 
 
 
 
 
 
 
 
 | 127 |  |  | 
 
 
 
 
 
 
 
 
 | 33 | – | # The default filter for a new host | 
 
 
 
 
 
 
 
 
 | 34 | – | Host.filter=computingFilter | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 128 |  |  | 
 
 
 
 
 
 
 
 
 | 36 | – | config.Host.killigrew.ukc.ac.uk=killigrew.conf | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 129 |  |  | 
 
 
 
 
 
 
 
 | 130 | + | ############################################################ | 
 
 
 
 
 
 
 
 | 131 | + | #### Database interface configuration | 
 
 
 
 
 
 
 
 | 132 | + | ############################################################ | 
 
 
 
 
 
 
 
 | 133 | + |  | 
 
 
 
 
 
 
 
 | 134 | + | # The name for the Database interface | 
 
 
 
 
 
 
 
 | 135 | + | DBInterface.name=database | 
 
 
 
 
 
 
 
 | 136 | + |  | 
 
 
 
 
 
 
 
 | 137 | + |  | 
 
 
 
 
 
 
 
 | 138 | + |  | 
 
 
 
 
 
 
 
 | 139 | + | ############################################################ | 
 
 
 
 
 
 
 
 | 140 | + | #### Host Configuration | 
 
 
 
 
 
 
 
 | 141 | + | ############################################################ | 
 
 
 
 
 
 
 
 | 142 | + |  | 
 
 
 
 
 
 
 
 | 143 | + | # The default filter for a new host | 
 
 
 
 
 
 
 
 | 144 | + | Host.filter=computingFilter; | 
 
 
 
 
 
 
 
 | 145 | + |  | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 146 |  | # The default update times for a new host | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 147 |  | Host.UDPUpdateTime=10 | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 148 |  | Host.TCPUpdateTime=60 | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 149 |  |  | 
 
 
 
 
 
 
 
 
 | 42 | – | # Plugin Information | 
 
 
 
 
 
 
 
 
 | 43 | – | Filter.PluginsPackage=uk.ac.ukc.iscream.filter.plugins | 
 
 
 
 
 
 
 
 
 | 44 | – | Filter.Plugins=TypeChecker;EnforceEssentialData | 
 
 
 
 
 
 
 
 
 | 45 | – |  | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 150 |  | # The services checks to run on a host | 
 
 
 
 
 
 
 
 
 
 
 | 151 | < | Host.serviceChecksPackage=uk.ac.ukc.iscream.filter.plugins | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 48 | < | Host.serviceChecks=HTTP;SMTP | 
 
 
 
 
 
 
 
 
 | 151 | > | Host.serviceChecksPackage=uk.org.iscream.cms.server.filter.plugins | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 152 |  |  | 
 
 
 
 
 
 
 
 
 | 50 | – | # mySQL Details | 
 
 
 
 
 
 
 
 
 | 51 | – | config.mySQL=mySQL.conf | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 153 |  |  | 
 
 
 
 
 
 
 
 
 | 53 | – | # The time interval at which the Queue's should be monitored | 
 
 
 
 
 
 
 
 
 | 54 | – | Queue.MonitorInterval=15 | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 154 |  |  | 
 
 
 
 
 
 
 
 
 
 
 | 155 | < | group.rocks=Host.slate.ukc.ac.uk | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 156 | < | config.rocks=rocks.conf | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 155 | > | ############################################################ | 
 
 
 
 
 | 156 | > | #### Monitor Configuration | 
 
 
 
 
 | 157 | > | ############################################################ | 
 
 
 
 
 
 
 
 
 
 
 | 158 |  |  | 
 
 
 
 
 
 
 
 | 159 | + | ## The monitors to run | 
 
 
 
 
 
 
 
 | 160 | + | Monitor.PluginsPackage=uk.org.iscream.cms.server.client.monitors | 
 
 
 
 
 
 
 
 | 161 | + | Monitor.Plugins=CPU;Load;Process;Disk;Memory;Swap;Services;\ | 
 
 
 
 
 
 
 
 | 162 | + | Heartbeat;Queue;UserCount;WebFeeder; | 
 
 
 
 
 
 
 
 | 163 | + |  | 
 
 
 
 
 
 
 
 | 164 | + | ## Default alert timeouts | 
 
 
 
 
 
 
 
 | 165 | + | # these can be override on a per-monitor basis | 
 
 
 
 
 
 
 
 | 166 | + | # timings of the alerts (in seconds) | 
 
 
 
 
 
 
 
 | 167 | + | Monitor.alertTimeout.NOTICE=60 | 
 
 
 
 
 
 
 
 | 168 | + | Monitor.alertTimeout.WARNING=900 | 
 
 
 
 
 
 
 
 | 169 | + | Monitor.alertTimeout.CAUTION=1800 | 
 
 
 
 
 
 
 
 | 170 | + | Monitor.alertTimeout.CRITICAL=3600 | 
 
 
 
 
 
 
 
 | 171 | + |  | 
 
 
 
 
 
 
 
 | 172 | + | ## Threshold values | 
 
 
 
 
 
 
 
 | 173 | + | # | 
 
 
 
 
 
 
 
 | 174 | + | # note: if the UPPER threshold is broken, | 
 
 
 
 
 
 
 
 | 175 | + | # the alertTimeout values are halved. | 
 
 
 
 
 
 
 
 | 176 | + | # This is to escalate the alert quicker. | 
 
 
 
 
 
 
 
 | 177 | + | # | 
 
 
 
 
 
 
 
 | 178 | + |  | 
 
 
 
 
 
 
 
 | 179 | + | # CPU monitor threshold values | 
 
 
 
 
 
 
 
 | 180 | + | Monitor.CPU.threshold.LOWER=90 | 
 
 
 
 
 
 
 
 | 181 | + | Monitor.CPU.threshold.UPPER=99 | 
 
 
 
 
 
 
 
 | 182 | + |  | 
 
 
 
 
 
 
 
 | 183 | + |  | 
 
 
 
 
 
 
 
 | 184 | + | # Load monitor threshold values | 
 
 
 
 
 
 
 
 | 185 | + | Monitor.Load.threshold.LOWER=10.0 | 
 
 
 
 
 
 
 
 | 186 | + | Monitor.Load.threshold.UPPER=20.0 | 
 
 
 
 
 
 
 
 | 187 | + |  | 
 
 
 
 
 
 
 
 | 188 | + |  | 
 
 
 
 
 
 
 
 | 189 | + | # Process Count threshold values | 
 
 
 
 
 
 
 
 | 190 | + | Monitor.Process.threshold.LOWER=1000 | 
 
 
 
 
 
 
 
 | 191 | + | Monitor.Process.threshold.UPPER=1500 | 
 
 
 
 
 
 
 
 | 192 | + |  | 
 
 
 
 
 
 
 
 | 193 | + |  | 
 
 
 
 
 
 
 
 | 194 | + | # Memory monitor threshold values | 
 
 
 
 
 
 
 
 | 195 | + | Monitor.Memory.threshold.LOWER=80 | 
 
 
 
 
 
 
 
 | 196 | + | Monitor.Memory.threshold.UPPER=90 | 
 
 
 
 
 
 
 
 | 197 | + |  | 
 
 
 
 
 
 
 
 | 198 | + |  | 
 
 
 
 
 
 
 
 | 199 | + | # Swap monitor threshold values | 
 
 
 
 
 
 
 
 | 200 | + | Monitor.Swap.threshold.LOWER=80 | 
 
 
 
 
 
 
 
 | 201 | + | Monitor.Swap.threshold.UPPER=90 | 
 
 
 
 
 
 
 
 | 202 | + |  | 
 
 
 
 
 
 
 
 | 203 | + |  | 
 
 
 
 
 
 
 
 | 204 | + | # UserCount monitor threshold values | 
 
 
 
 
 
 
 
 | 205 | + | Monitor.UserCount.threshold.LOWER=100 | 
 
 
 
 
 
 
 
 | 206 | + | Monitor.UserCount.threshold.UPPER=200 | 
 
 
 
 
 
 
 
 | 207 | + |  | 
 
 
 
 
 
 
 
 | 208 | + |  | 
 
 
 
 
 
 
 
 | 209 | + | # Disk monitor threshold values | 
 
 
 
 
 
 
 
 | 210 | + | Monitor.Disk.threshold.LOWER=90 | 
 
 
 
 
 
 
 
 | 211 | + | Monitor.Disk.threshold.UPPER=95 | 
 
 
 
 
 
 
 
 | 212 | + | # Thresholds given are PERCENTAGE or VALUE | 
 
 
 
 
 
 
 
 | 213 | + | # where PERCENTAGE is a percentage of disk in use | 
 
 
 
 
 
 
 
 | 214 | + | # and VALUE is an absolute value of space free | 
 
 
 
 
 
 
 
 | 215 | + | Monitor.Disk.thresholdMeasure=PERCENTAGE | 
 
 
 
 
 
 
 
 | 216 | + |  | 
 
 
 
 
 
 
 
 | 217 | + |  | 
 
 
 
 
 
 
 
 | 218 | + | # Queue monitor threshold values | 
 
 
 
 
 
 
 
 | 219 | + | Monitor.Queue.threshold.LOWER=50 | 
 
 
 
 
 
 
 
 | 220 | + | Monitor.Queue.threshold.UPPER=80 | 
 
 
 
 
 
 
 
 | 221 | + | # Thresholds given are PERCENTAGE or VALUE | 
 
 
 
 
 
 
 
 | 222 | + | # where PERCENTAGE is a percentage of disk in use | 
 
 
 
 
 
 
 
 | 223 | + | # and VALUE is an absolute value of space free | 
 
 
 
 
 
 
 
 | 224 | + | Monitor.Queue.thresholdMeasure=PERCENTAGE | 
 
 
 
 
 
 
 
 | 225 | + |  | 
 
 
 
 
 
 
 
 | 226 | + |  | 
 
 
 
 
 
 
 
 | 227 | + | # Services monitor threshold values | 
 
 
 
 
 
 
 
 | 228 | + | # | 
 
 
 
 
 
 
 
 | 229 | + | # THE SERVICES MONITOR USES A HACK | 
 
 
 
 
 
 
 
 | 230 | + | # WHEREBY IT USES THE SERVICE STATUS | 
 
 
 
 
 
 
 
 | 231 | + | # AS THE THRESHOLD LEVEL.  THIS SHOULD | 
 
 
 
 
 
 
 
 | 232 | + | # BE LOOKED AT! | 
 
 
 
 
 
 
 
 | 233 | + | # | 
 
 
 
 
 
 
 
 | 234 | + | # how many times we should be at the highest level before | 
 
 
 
 
 
 
 
 | 235 | + | # we go to a FINAL alert | 
 
 
 
 
 
 
 
 | 236 | + | Monitor.Services.reachFINALcount=5 | 
 
 
 
 
 
 
 
 | 237 | + |  | 
 
 
 
 
 
 
 
 | 238 | + |  | 
 
 
 
 
 
 
 
 | 239 | + | # Heartbeat threshold values | 
 
 
 
 
 
 
 
 | 240 | + | # these are values in seconds from when the heartbeat | 
 
 
 
 
 
 
 
 | 241 | + | # was *expected* to arrive (ie. last + hearbeat period) | 
 
 
 
 
 
 
 
 | 242 | + | Monitor.Heartbeat.threshold.LOWER=180 | 
 
 
 
 
 
 
 
 | 243 | + | Monitor.Heartbeat.threshold.UPPER=300 | 
 
 
 
 
 
 
 
 | 244 | + | # this is how often we will run a "check" of heartbeats | 
 
 
 
 
 
 
 
 | 245 | + | Monitor.Heartbeat.checkPeriod=50 | 
 
 
 
 
 
 
 
 | 246 | + | # how many times we should be at the highest level before | 
 
 
 
 
 
 
 
 | 247 | + | # we go to a FINAL alert | 
 
 
 
 
 
 
 
 | 248 | + | Monitor.Heartbeat.reachFINALcount=5 | 
 
 
 
 
 
 
 
 | 249 | + | # list of hosts we expect to have at startup | 
 
 
 
 
 
 
 
 | 250 | + | # this ensures we notice hosts that aren't running, not | 
 
 
 
 
 
 
 
 | 251 | + | # just those that have gone down recently. | 
 
 
 
 
 
 
 
 | 252 | + | Monitor.Heartbeat.initialHosts=raptor.ukc.ac.uk;myrtle.ukc.ac.uk;kestrel.ukc.ac.uk | 
 
 
 
 
 
 
 
 | 253 | + |  | 
 
 
 
 
 
 
 
 | 254 | + |  | 
 
 
 
 
 
 
 
 | 255 | + |  | 
 
 
 
 
 
 
 
 | 256 | + | ############################################################ | 
 
 
 
 
 
 
 
 | 257 | + | #### Alerter Configuration | 
 
 
 
 
 
 
 
 | 258 | + | ############################################################ | 
 
 
 
 
 
 
 
 | 259 | + | # The following var's are understood by ALL alerters for messages | 
 
 
 
 
 
 
 
 | 260 | + | # | 
 
 
 
 
 
 
 
 | 261 | + | # %level%               - the alert level (eg, WARNING) | 
 
 
 
 
 
 
 
 | 262 | + | # %threshold%           - the threshold broken (eg, LOWER) | 
 
 
 
 
 
 
 
 | 263 | + | # %source%              - the source of the alert (eg, raptor.ukc.ac.uk) | 
 
 
 
 
 
 
 
 | 264 | + | # %value%               - the value reached (eg, 95) | 
 
 
 
 
 
 
 
 | 265 | + | # %thresholdValue%      - the value of the threshold broken (eg, 90) | 
 
 
 
 
 
 
 
 | 266 | + | # %attributeName%       - the attribute that has caused the alert (eg, CPU User) | 
 
 
 
 
 
 
 
 | 267 | + | # %timeTillNextAlert%   - the time the next alert will be sent out | 
 
 
 
 
 
 
 
 | 268 | + | # %timeSinceFirstAlert% - the time elapsed since the first alert for this problem | 
 
 
 
 
 
 
 
 | 269 | + | # %timeOfFirstAlert%    - the time the first alert was sent | 
 
 
 
 
 
 
 
 | 270 | + | # | 
 
 
 
 
 
 
 
 | 271 | + |  | 
 
 
 
 
 
 
 
 | 272 | + | # alerters to run | 
 
 
 
 
 
 
 
 | 273 | + | Alerter.PluginsPackage=uk.org.iscream.cms.server.client.alerters | 
 
 
 
 
 
 
 
 | 274 | + | Alerter.Plugins=EMail;IRC;WebFeeder;Logging; | 
 
 
 
 
 
 
 
 | 275 | + |  | 
 
 
 
 
 
 
 
 | 276 | + |  | 
 
 
 
 
 
 
 
 | 277 | + | # EMail alerter configuration | 
 
 
 
 
 
 
 
 | 278 | + | Alerter.EMail.level = WARNING | 
 
 
 
 
 
 
 
 | 279 | + | Alerter.EMail.destList = dev@i-scream.org.uk | 
 
 
 
 
 
 
 
 | 280 | + | Alerter.EMail.sender = dev@i-scream.org.uk | 
 
 
 
 
 
 
 
 | 281 | + | Alerter.EMail.smtpServer = mercury.ukc.ac.uk | 
 
 
 
 
 
 
 
 | 282 | + | Alerter.EMail.subject = i-scream alert: %level% alert on %source% for %attributeName% | 
 
 
 
 
 
 
 
 | 283 | + | Alerter.EMail.message = The i-scream distributed central monitoring system has\nraised a %level% alert for the host %source%.\n\nThe value for %attributeName% of %value% has exceeded the\n%threshold% threshold value of %thresholdValue%.\n\nThis alert was originally raised at %timeOfFirstAlert%,\nwhich was %timeSinceFirstAlert% ago.\n\nThe next alert (should one occur) will be sent in %timeTillNextAlert%. | 
 
 
 
 
 
 
 
 | 284 | + |  | 
 
 
 
 
 
 
 
 | 285 | + |  | 
 
 
 
 
 
 
 
 | 286 | + | # IRC alerter configuration | 
 
 
 
 
 
 
 
 | 287 | + | Alerter.IRC.level = OK | 
 
 
 
 
 
 
 
 | 288 | + | Alerter.IRC.IRCServer = killigrew.ukc.ac.uk | 
 
 
 
 
 
 
 
 | 289 | + | Alerter.IRC.IRCPort = 6667 | 
 
 
 
 
 
 
 
 | 290 | + | Alerter.IRC.nickList = iscreamBot;_iscreamBot;i-screamBot | 
 
 
 
 
 
 
 
 | 291 | + | Alerter.IRC.user = i-scream | 
 
 
 
 
 
 
 
 | 292 | + | Alerter.IRC.comment = i-scream alerting bot (based on PircBot) | 
 
 
 
 
 
 
 
 | 293 | + | Alerter.IRC.finger = i-scream alerting bot (based on PircBot) | 
 
 
 
 
 
 
 
 | 294 | + | Alerter.IRC.channel = #i-scream | 
 
 
 
 
 
 
 
 | 295 | + | Alerter.IRC.message = %level%: %attributeName% on %source% has passed %threshold%(%thresholdValue%) threshold with %value% - time till next alert (should one occur), %timeTillNextAlert% | 
 
 
 
 
 
 
 
 | 296 | + | Alerter.IRC.reconnectDelay = 30 | 
 
 
 
 
 
 
 
 | 297 | + | Alerter.IRC.startupNotice = i-scream alerting bot activated | 
 
 
 
 
 
 
 
 | 298 | + | Alerter.IRC.stopCommand = stop alerts | 
 
 
 
 
 
 
 
 | 299 | + | Alerter.IRC.startCommand = start alerts | 
 
 
 
 
 
 
 
 | 300 | + | Alerter.IRC.lastAlertCommand = last alert | 
 
 
 
 
 
 
 
 | 301 | + | Alerter.IRC.joinCommand = join | 
 
 
 
 
 
 
 
 | 302 | + | Alerter.IRC.nickChangeCommand = nick | 
 
 
 
 
 
 
 
 | 303 | + | Alerter.IRC.statCommand = statistics | 
 
 
 
 
 
 
 
 | 304 | + | Alerter.IRC.uptimeCommand = uptime | 
 
 
 
 
 
 
 
 | 305 | + | Alerter.IRC.timeSinceLastAlertCommand = time since last alert | 
 
 
 
 
 
 
 
 | 306 | + | Alerter.IRC.versionCommand = version | 
 
 
 
 
 
 
 
 | 307 | + | Alerter.IRC.helpCommand = help | 
 
 
 
 
 
 
 
 | 308 | + | Alerter.IRC.rejectMessage = sorry, I don't understand your request | 
 
 
 
 
 
 
 
 | 309 | + |  | 
 
 
 
 
 
 
 
 | 310 | + |  | 
 
 
 
 
 
 
 
 | 311 | + | # Logging alerter configuration | 
 
 
 
 
 
 
 
 | 312 | + | Alerter.Logging.level = WARNING | 
 
 
 
 
 
 
 
 | 313 | + | Alerter.Logging.message = %level%: %attributeName% on %source% has passed %threshold%(%thresholdValue%) threshold with %value% | 
 
 
 
 
 
 
 
 | 314 | + |  | 
 
 
 
 
 
 
 
 | 315 | + |  | 
 
 
 
 
 
 
 
 | 316 | + |  | 
 
 
 
 
 
 
 
 | 317 | + | ############################################################ | 
 
 
 
 
 
 
 
 | 318 | + | #### WebFeeder Configuration | 
 
 
 
 
 
 
 
 | 319 | + | ############################################################ | 
 
 
 
 
 
 
 
 | 320 | + |  | 
 
 
 
 
 
 
 
 | 321 | + | # Define these (one or both_ to turn on the WebFeeder's, | 
 
 
 
 
 
 
 
 | 322 | + | # comment it to turn them off | 
 
 
 
 
 
 
 
 | 323 | + | WebFeeder.latestActive = true | 
 
 
 
 
 
 
 
 | 324 | + | WebFeeder.alertActive = true | 
 
 
 
 
 
 
 
 | 325 | + |  | 
 
 
 
 
 
 
 
 | 326 | + | # Only pass on alerts past this level | 
 
 
 
 
 
 
 
 | 327 | + | Alerter.WebFeeder.level = OK | 
 
 
 
 
 
 
 
 | 328 | + |  | 
 
 
 
 
 
 
 
 | 329 | + | # Check period in seconds (for cleaning stale/old alerts) | 
 
 
 
 
 
 
 
 | 330 | + | WebFeeder.checkPeriod = 120 | 
 
 
 
 
 
 
 
 | 331 | + |  | 
 
 
 
 
 
 
 
 | 332 | + | # Delete alerts older than this, in seconds. | 
 
 
 
 
 
 
 
 | 333 | + | # Files are only check every WebFeeder.checkPeriod seconds. | 
 
 
 
 
 
 
 
 | 334 | + | WebFeeder.alertDeleteOlderThan = 300 | 
 
 
 
 
 
 
 
 | 335 | + |  | 
 
 
 
 
 
 
 
 | 336 | + | # Root Path | 
 
 
 
 
 
 
 
 | 337 | + | WebFeeder.rootPath = /usr/local/proj/co600_10/webroot | 
 
 
 
 
 
 
 
 | 338 | + |  | 
 
 
 
 
 
 
 
 | 339 | + | # Latest Data | 
 
 
 
 
 
 
 
 | 340 | + | WebFeeder.latestSubDir = latest | 
 
 
 
 
 
 
 
 | 341 | + | WebFeeder.latestFileName = latest_data | 
 
 
 
 
 
 
 
 | 342 | + |  | 
 
 
 
 
 
 
 
 | 343 | + | # Alert Data | 
 
 
 
 
 
 
 
 | 344 | + | WebFeeder.alertSubDir = alert | 
 
 
 
 
 
 
 
 | 345 | + | WebFeeder.alertFileName = alert_data | 
 
 
 
 
 
 
 
 | 346 | + |  | 
 
 
 
 
 
 
 
 | 347 | + |  | 
 
 
 
 
 
 
 
 | 348 | + | ############################################################ |