ID: 8297
Title: Fixed problem where objects stayed in downtime even if downtimes where removed
Component: cmc
Level: 2
Class: Bug fix
Version: 1.2.7i3
Due to a bug while saving the state of current downtimes it could happen that removing
a downtime would not reset the host/service in the state "not in downtime". The blue
moon icon stayed at the host - even if there was no downtime left. This has been fixed.
The fix can only fix new downtimes automaticall, however. If you still have sticky
blue moons then please set and remove downtimes for those. The moon will then vanish.
ID: 8295
Title: Automatically create backup of state file if state shrinks by more than 5% in size
Component: cmc
Level: 2
Class: New feature
Version: 1.2.7i3
If you do some unlucky misconfiguration (like setting disabled services for
all services instead of just a few) then you will loose the current state and
downtimes of all affected objects - even if you recreate them later again.
That is because from the point of view of the core vanished objects are
expected to be gone forever and their state is being dropped.
In such situations the CMC now automatically creates a copy <tt>state.1</tt>
of you state file before creating a new one in its place. Previous backups
are shifted to <tt>state.2</tt>, <tt>state.3</tt> and so an. Up to 30 backups
are being kept. These backup are <i>never</i> being restored automatically
at any time. If you like to get back to your old state, you can copy these
files manually:
C+:
OM:omd stop cmc
OM:cd var/check_mk/core
OM:mv state state.away
OM:cp state.1 state
OM:omd start cmc
C-:
This backup always happens if the size of the new state file is by at least 5%
smaller then the old one.
Note: The state in this file contains the current OK/WARN/CRIT, the plugin
output, the next scheduled check execution, notification, downtimes, comments
and stuff like that. It does <i>not</i> contain historic performance data
or events. But these do not get lost in the cases mentioned above.
ID: 8296
Title: More precise availability handling of removed and readded objects
Component: Reporting & Availability
Level: 2
Class: New feature
Version: 1.2.7i3
The CMC now better detects objects that have been removed and readded later on to
the monitoring. It does this by logging messages of the type <tt>VANISHED HOST</tt>
or <tt>VANISHED SERVICE</tt> to the monitoring history file and processing these
messages when computing the availability timelines.
ID: 8293
Title: Alert handlers: optionally process every single check execution, inline alert handlers
Component: cmc
Level: 2
Class: New feature
Version: 1.2.7i3
The new alert handlers can now optionally be called at every check
execution. This is a possible way to bring check results into some external
system (like a database). Please note that this can cost many CPU ressources
and slow down the monitoring if the alert handler cannot process the data
fast enough.
In order to implement more performance alert handlers, these can now optionally
be written as Python functions that are being called without creating a new
process. Such an inline alert handler has the following structure:
F+:/omd/sites/mysite/local/share/check_mk/alert_handlers/foo
#!/usr/bin/python
# Inline: yes
# Do some basic initialization (optional)
def handle_init():
log("INIT")
# Called at shutdown (optional)
def handle_shutdown():
log("SHUTDOWN")
# Called at every alert (mandatory)
def handle_alert(context):
log("ALERT: %s" % context)
F-:
You need to define at least <tt>handle_alert</tt>. The argument <tt>context</tt> is a dictionary
with keys like <tt>"HOSTNAME"</tt>. You can use the function <tt>log(...)</tt>, which will write
some diagnostic text into <tt>var/log/alerts.log</tt> - marked with the name of you alert handler.
The two global variables <tt>omd_root</tt> and <tt>omd_site</tt> are set to the home directory
and to the name of the OMD site.
It is allowed to use <tt>import</tt> commands in your handler.
Note that in the second line you need to put <tt># Inline: yes</tt>. That way Check_MK nows
that the alert handler should be loaded as inline Python function and not run as a script.
Note also that after each change to an inline alert handler you need to restart the
CMC:
C+:
OM:omd restart cmc
C-:
ID: 8294
Title: Errors in WATO configuration do not prevent the core from being restarted anymore
Component: cmc
Level: 2
Class: New feature
Version: 1.2.7i3
When you had an error in your monitoring configuration like duplicate hosts
or services, missing timeperiods, invalid cluster nodes or parents or various
other situations then Check_MK could not create a valid configuration for the core
and thus you could not activate any changes.
This has been changed. All these errors are now only warnings. A working
configuration for the core is now always being created. WATO will display
the warnings in the <i>Activate Changes</i> page.
ID: 8280
Title: Change order of metrics in legend in order to match order of curves in graph
Component: metrics
Level: 2
Class: Bug fix
Version: 1.2.7i3
ID: 8279
Title: Do not delete but postpone notification while host/service is out of it notification period
Component: cmc
Level: 2
Class: Bug fix
Version: 1.2.7i3
Previously notifications would be totally dropped if the object in question
was out of its notification period. Note: a contact who is out of notification
period will still not get the notification later. Also when a timeperiod is
being used as a condition in a notification rule then the notification will
not be postponed but the rule will simply fail to match.