add ":skipscale" option to prevent diagram area from being scaled by threshold lines, thus losing granularity in the graphs
Is your feature request related to a problem? Please describe. The "LINE1" command of rrdtool which is used to add the threshold indicators forces a rescaling of the whole diagram. For high threshold settings in comparison to the current baseline data, the graph is more or less only the basic noise at the bottom of the diagram, which makes the information basically unreadable. But in certain monitoring situations it is desired to see the ups and downs in a graph, even if the threshold is by far not reached, but we want to see also the threshold lines, in case they are crossed.
Describe the solution you'd like Add the "skipscale" modifier to the threshold lines in the rrdtool command, so that they don't affect the diagram scaling. This would be also nice to be configurable, either globally or maybe also per threshold.
Describe alternatives you've considered no alternatives
Additional context I hardcoded this in our case, because we don't want to have any graph scaled by a threshold line, the modification is quite simple. I did not look too deeply though into the possibility to have this added properly as a configuration item in the threshold module.
around line 497 you could add: $no_scale = ':skipscale'; and make this dependent on an option that is reflected in the DB, either keep it empty or set it to ":skipscale".
Then in each of the sixteen LINE1 commands, you simply add the $no_scale variable like in this example: $txt_graph_items .= 'LINE1:' . $t['thold_hi'] . '#' . $color . ':'' . rrdtool_escape_string('Alert Hi for ' . $t['name'] . ' (' . number_format_i18n($t['thold_hi']) . ')') . ''' . $no_scale . ' \' . "\n";
Works perfectly for us, the graphs are now scaled to their "normal" height and the threshold lines vanish until the scale is reaching a point where the thold line is actually inside the diagram area.