Release candidate of Hobbit 4.0.5 ready
Henrik Stoerner
henrik at hswn.dk
Fri Jul 15 13:05:01 CEST 2005
After finally nailing a very nasty bug earlier this week, I've
prepared the first release-candidate of Hobbit 4.0.5 - you'll
find it at http://www.hswn.dk/beta/hobbit-4.0.5RC1.tar.gz
I expect it to remain in the RC-state for about a week, and
then a release is planned for the last week of July.
This fixes a number of bugs, some rather serious in that they
could cause the Hobbit daemon to crash and thereby disable all
of your monitoring. This in itself should make everyone consider
upgrading.
A number of performance tweaks have been added, so for large
installations (including mine), Hobbit and especially hobbitd_alert
now uses significantly less CPU time than before.
Finally, Craig Cook - maintainer of the LARRD package - politely
requested that Hobbit did not refer to LARRD since there are
differences between what Hobbit and LARRD does. (And Hobbit doesn't
use any LARRD code). So to avoid confusion, I've cleaned up all
references to LARRD in Hobbit. This means that some stuff had to be
renamed: The hobbitd_larrd program is now hobbitd_rrd, the "LARRD:"
tag in bb-hosts is now "TRENDS:", and the LARRDCOLUMN and GRAPHS
settings in hobbitserver.cfg changed to TRENDSCOLUMN and TEST2RRD
respectively. These changes will all either happen automatically
when you install the new version, or - in the case of the LARRD:
tag - the old name will still be recognized.
The detailed log of changes is included below. Let me know if I
broke anything.
Regards,
Henrik
-------------- next part --------------
Changes from 4.0.4 -> current snapshot
======================================
Bugfixes
--------
* [SECURITY] The Hobbit daemon (hobbitd) could crash when
processing certain types of messages. It is believed that
this could only be used for a denial-of-service attack
against Hobbit, although it cannot completely be ruled
out that an attacker might be able to exploit it to run
arbitrary code with the privileges of the hobbit user.
Thanks to Vernon Everett and Stefan Loos for their efforts
in helping me track down these bugs.
* Workaround a bug in KHTML based browsers (KDE's Konqueror,
Mac OS X Safari) when generating reports: They cannot handle
"multipart/mixed" documents, but only offer to save the
document instead of sending you off to the report URL.
* Fix a build problem on OpenBSD: Apparently OpenBSD's linker
does not recognize the --rpath option.
* A memory leak in the Hobbit daemon has been fixed (it would
leak memory upon each reload of the bb-hosts file, which is
done every 5 minutes).
* Status messages using "&green" or another color in the first
line of the status message would display the "&green" text
instead of the color GIF image.
* bbtest-net's collection of DNS responses has been delayed until
an actual test is queued. Previously, a host with a "testip"
flag could end up with a DNS lookup which doesn't really
make sense.
* Handling of the "notrends" tag was broken.
* The duration string should no longer be included in the
webpage showing a disabled test. (Only applies to tests
disabled after installing Hobbit 4.0.5).
* bbtest-net now reports "Hobbit" in the User-Agent header
of all web requests, instead of "BigBrother".
* If an alert was configured to be sent only during certain
periods of time, the recovery message would be suppressed if
the recovery happened outside of the alerting period. Changed
so that recovery messages ignore the time-based restrictions.
* hobbit-mailack would generate ack's valid for 30 minutes, instead
of the documented 60 minutes. Changed to use 60 minutes.
* A number of minor documentation fixes.
Improvements
------------
* A new reporting tool, hobbit-confreport.cgi, provides a
way of generating a printable report summarizing the Hobbit
monitoring configuration for a single server or a group of
servers.
* If a "custom" directory exists, you can have custom Hobbit
tools located there and have them built during the normal
build proces.
* A status handed off to the hobbitd_alert module, but for which
there is no alert recipient configured, would be re-checked
every minute causing a heavy spike in the CPU load if there
were many such statuses. A small code change allows us to
skip these until the configuration file changes.
* The code handling lookups of data from the bb-hosts file was
changed to access the data via a tree-based search instead of
a linear search. On large systems this provides a much more
efficient retrieval of these data, reducing the overall load
of Hobbit.
* The internal representation of status-data inside the hobbitd
daemon now uses a more efficient tree-structure instead of a
simple linked list.
* The NETFAILTEXT environment variable can be used to change
the "not OK" text added to status messages of failed network
tests.
* External commands used in network testing (ntpdate, rpcinfo,
traceroute) now have max. 30 seconds to complete. This is to
avoid a broken ntpdate or similar to lock up the network tests.
The "--cmdtimeout=N" option controls the length of the timeout.
* A number of arbitrary limits on the size of various buffers,
messages, queries and responses have been removed. Hobbit will
now handle status-messages of practically any size, except
that the interface between the main daemon and the worker modules
(handling history, RRD files and alerts) is limited to 100 KB
message size.
* hobbitlaunch no longer logs every task started to the
hobbitlaunch.log file - this could result in the log file growing
to huge proportions. The "--verbose" option for hobbitlaunch
will restore the old behaviour, if needed.
LARRD / Hobbit cleanup
----------------------
Upon request from Craig Cook, the code and docs were changed to
clarify that Hobbit and LARRD are not related. I therefore
decided to remove references to "LARRD" in the configuration files,
resulting in these changes:
* LARRDCOLUMN renamed to TRENDSCOLUMN, and LARRDS renamed to TEST2RRD
in hobbitserver.cfg (handled automatically by "make install").
* The bb-hosts "LARRD:" tag was renamed to "TRENDS:". Existing bb-hosts
files using the old tag still work, though.
* The hobbitd_larrd program were renamed to hobbitd_rrd. The default
hobbitlaunch.cfg file was also changed to reflect this, and the
names of the logfiles from the two RRD update tasks were changed as
well. All of this should happen automatically when running "make
install", but if you have added extra options - e.g. for custom graphs -
then you may need to re-do those modifications in hobbitlaunch.cfg.
More information about the Xymon
mailing list