Now that in Multihost mode anyone can select the option "All" in the Hostname list and "All graphs" in the Graph list, this may, accidentally, hang the browser for a while due to the huge amount of images to download remotely from different servers.
In order to prevent precisely that, this new option defines which option in the Graph list will be selected ("System load" by default) automatically when the user selects 'All' in the Hostname list.
Of course, the user is still able to change it to "All graphs" at any moment, and at his own risk :-). #216
There was a stupid bug that prevented to include the SReclaimable value in the
formula to calculate the 'Used' value.
Morever, I've seen that newer versions of 'free' command also include the value
SUnreclaim in that formula. So, the final calculation of 'Used' is like this:
Used = MemTotal - MemFree - Buffers - Cached - SReclaimable - SUnreclaim
This ensures that Monitorix is in sync with the results of 'free' command. #204
From now on the user will have the opportunity to select which
command will use to gather the network status statistics. The
new option 'cmd' supports two values 'netstat' or 'ss', being
the later the value by default.
If the 'cmd' option is not defined, then the command line used
will be 'ss', that's because in newer Linux systems it looks like
the command 'netstat' is being deprecated.
In older Linux systems people will be forced to use the 'netstat'
command because, early 'ss' versions doesn't contain the protocol
column in its output, which breaks the regexp used to extract the
the values. #196
From now on, the alerts accepts a forth parameter that specifies
when the alert will be triggered. This parameter accepts two values:
'above' or 'below', being the 'above' the default value if it's not
specified, in order to keep backwards compatibility.
This way, if some value in the graph is 'above' or 'below' from the
threshold during more time than specified in the timeout value, the
alert will be triggered.
The manpage has also been updated to reflect this new feature. #221
There is a well known problem with the HTTP built-in server that Monitorix
implements using the Perl module 'HTTP::Server::Simple'. It looks like it's
pretty weak to the common attacks that any web server receives every day.
As a consequence of that, it just hangs, and when you want to see the stats of
your server, you just see your browser waiting for a response that never comes,
which ends up with a timeout. In these cases, you are forced to login to your
server and restart Monitorix, in order to refresh the HTTP built-in server.
I was frustrated because I was completely unable to reproduce locally the kind
of attack that seems to do a DoS to the HTTP built-in server, so in order to
mitigate (hopefully) all this annoying hangups, I've created an autocheck to
control the responsiveness of the HTTP server on every minute, and in case of
no response then it will be restarted automatically. This is controlled by a new
option called 'autocheck_responsiveness' which by default is enabled.
Let's see how this is working!