ID: 8641
Title: Views: Time range selected by panning is respected in PDF exports now
Component: Metrics System
Level: 1
Class: New Feature
Version: 1.4.0i3
ID: 8640
Title: Graph collection: PDF exports respect the choosen time range now
Component: Metrics System
Level: 1
Class: New Feature
Version: 1.4.0i3
In previous versions the PDF exports of graph collections did always output
PDFs with a 4 hour time range.
ID: 8578
Title: Fixed C-style mangling of performance variable names in Graphite/InfluxDB connections
Component: The Check_MK Micro Core
Level: 1
Class: Bug Fix
Version: 1.4.0i3
Previously, the performance variable names were not mangled in a reversible
manner, even when C-style mangling was requested.
ID: 8642
Title: Reworked logging configuration of the Check_MK Microcore
Component: The Check_MK Micro Core
Level: 1
Class: New Feature
Version: 1.4.0i3
The logging configuration of the Check_MK Microcore has been reworked to be
configured in a single setting. The log levels have been unified for all these
log domains.
Thes configuration options have been deprecated:
<ul>
<li><tt>cmc_log_level</tt>: Logging</li>
<li><tt>cmc_livestatus_debug</tt>: Logging of Livestatus queries</li>
<li><tt>cmc_debug_alerts</tt>: Logging of the alert processing in the core</li>
</ul>
The attribute <tt>log_level</tt> has been removed from <tt>cmc_log_cmk_helpers</tt>
which is now only used to toggle the debug mode of the Check_MK helpers.
The new option is <tt>cmc_log_levels</tt> (Logging of the core).
The incompatibility is that, if you have configured custom log leves with the
options mentioned above before, they are not effective anymore. You will have
to set the log levels again using the new option.
In most cases it should be no problem that the log levels are reset, because
they are mostly only used for a short time during debugging actions.
ID: 8580
Title: Removed space leaks related to dynamic columns.
Component: Livestatus
Level: 1
Class: Bug Fix
Version: 1.4.0i3
When some special columns were queried via Livestatus, the monitoring core
leaked memory. This affected the following columns:
<ul>
<li><tt>mk_logwatch_file</tt> in table <tt>hosts</tt></li>
<li><tt>value</tt> in table <tt>eventconsolereplication</tt></li>
<li><tt>rrddata</tt> in tables <tt>hosts</tt> and <tt>services</tt></li>
</ul>
ID: 8643
Title: Web API: New API for fetching graph data
Component: Metrics System
Level: 1
Class: New Feature
Version: 1.4.0i3
The raw data of the Check_MK graphs can now be fetched via the Web API. The new
action is named <tt>get_graph</tt>.
The request object is structured like this:
C+:
{
"specification": [..., ...],
"data_range": {
"time_range" : [..., ...],
}
}
C-:
The specification is using the Check_MK internal graph specification format. The
first element is the specification type (<tt>template</tt>, <tt>custom</tt> or <tt>explicit</tt>.
The structure of the second element depends on the type. Please take a look at the
examples below to get an idea of it.
The time range is given in two unix timestamps, the start time and the end time.
For example this command can be used to fetch the first graph of the Check_MK service of
the host myhost123:
C+:
# curl "http://mycmkserver/mysite/check_mk/webapi.py?action=get_graph&_username=aut…" -d 'request={"specification": ["template", {"service_description": "Check_MK", "site": "mysite", "graph_index": 0, "host_name": "myhost123" }], "data_range": {"time_range": [1480653120, 1480667520]}}'
C-:
The answer may look like this:
C+:
{
"result": {
"step": 60,
"start_time": 1480653120,
"end_time": 1480667520,
"curves": [
{
"color": "#87f058",
"rrddata": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, 0.05, 0.059, 0.0423333, 0.0488333, 0.0413333, 0.0573333, 0.0515, 0.05, 0.05, 0.05, 0.05, 0.058, 0.052, 0.0578333, 0.0365, 0.0453333, 0.0576667, 0.0525, 0.05, 0.0573333, 0.0526667, 0.0428333, 0.0471667, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.0436667, 0.0526667, 0.06, 0.06, 0.054, 0.05, 0.0558333, 0.0541667, 0.0556667, 0.049, 0.0455, 0.0553333, 0.0493333, 0.04, 0.0451667, 0.05, 0.05, 0.05],
"line_type": "stack",
"title": "CPU time in user space"
},
]
},
"result_code": 0
}
C-:
This command is used to fetch the data of a custom graph named <tt>custom_graph_1</tt>:
C+:
# curl "http://mycmkserver/mysite/check_mk/webapi.py?action=get_graph&_username=aut…" -d 'request={"specification": ["custom", "custom_graph_1"], "data_range": {"time_range": [1480653120, 1480667520]}}'
C-:
ID: 8579
Title: Generalize Livestatus filter operators
Component: Livestatus
Level: 1
Class: New Feature
Version: 1.4.0i3
Previously, some filter operator did not work for numbers or had only a special
meaning with certain columns. This has been generalized in a uniform way, so all
operators work for numbers now, too.
The operators <tt>~</tt>, <tt>=~</tt>, and <tt>~~</tt> interpret numbers as bit
sets, and have the following meaning:
<ul>
<li><tt>x ~ y</tt> means: <tt>x</tt> is a superset of <tt>y</tt></li>
<li><tt>x =~ y</tt> means: <tt>x</tt> is a subset of <tt>y</tt></li>
<li><tt>x ~~ y</tt> means: <tt>x</tt> contains at least one element of <tt>y</tt></li>
</ul>
This is consistent with the way attribute list columns work and makes the
Livestatus semantics more regular.
ID: 8672
Title: Fixed crash of monitoring core with duplicate hosts
Component: The Check_MK Micro Core
Level: 1
Class: Bug Fix
Version: 1.4.0i3
When host names were not unique, the Check_MK micro core crashed when the
"hostgroups" or "servicegroups" table was queried via Livestatus. This has
been fixed now.
Note that such a configuration is invalid, but due to another bug (in cmk),
it was possible to generate it nevertheless.