]> granicus.if.org Git - icinga2/blob - ChangeLog
Merge pull request #5283 from Icinga/fix/remove-logstash
[icinga2] / ChangeLog
1 # Icinga 2.x CHANGELOG
2
3 Please check [doc/1-about.md].
4
5 ## What's New
6
7 ### What's New in Version 2.6.3
8
9 #### Changes
10
11 This is a bugfix release which addresses a number of bugs we've found since
12 2.6.2 was released. It also contains a number of improvements for the Icinga
13 documentation.
14
15 #### Feature
16
17 * Feature 4955 (Documentation): Review CheckCommand documentation including external URLs
18 * Feature 5057 (Documentation): Update Security section in the Distributed Monitoring chapter
19 * Feature 5055 (Documentation): mysql_socket attribute missing in the documentation for the mysql CheckCommand
20 * Feature 5035 (Documentation): Docs: Typo in Distributed Monitoring chapter
21 * Feature 5029 (Documentation): Advanced topics: Wrong acknowledgement notification filter
22 * Feature 5030 (Documentation): Advanced topics: Mention the API and explain stick acks, fixed/flexible downtimes
23 * Feature 3133 (Documentation): [dev.icinga.com #9583] Add practical examples for apply expressions
24 * Feature 4996 (Documentation): documentation: mixed up host names in 6-distributed-monitoring.md
25 * Feature 4980 (Documentation): Add OpenBSD and AlpineLinux package repositories to the documentation
26 * Feature 4954 (Documentation): Add an example for /v1/actions/process-check-result which uses filter/type
27
28 #### Bugfixes
29
30 * Bug 5080 (IDO): Missing index use can cause icinga_downtimehistory queries to hang indefinitely
31 * Bug 4603 (IDO): [dev.icinga.com #12597] With too many comments, Icinga reload process won't finish reconnecting to database
32 * Bug 4989 (Check Execution): Icinga daemon runs with nice 5 after reload
33 * Bug 4930 (Cluster): Change "Discarding 'config update object'" log messages to notice log level
34
35 ### What's New in Version 2.6.2
36
37 #### Changes
38
39 This is a bugfix release which addresses a crash that can occur when removing
40 configuration files for objects which have been deleted via the API.
41
42 #### Bugfixes
43
44 * Bug 4952 (API): Icinga crashes while trying to remove configuration files for objects which no longer exist
45
46 ### What's New in Version 2.6.1
47
48 #### Changes
49
50 This release addresses a number of bugs we have identified in version 2.6.0.
51 The documentation changes
52 reflect our recent move to GitHub.
53
54 #### Feature
55
56 * Feature 4950 (Documentation): doc/6-distributed-monitoring.md: Fix typo
57 * Feature 4934 (Documentation): Update contribution section for GitHub
58 * Feature 4923 (Documentation): [dev.icinga.com #14011] Migration to Github
59 * Feature 4917 (Documentation): [dev.icinga.com #13969] Incorrect license file mentioned in README.md
60 * Feature 4916 (Documentation): [dev.icinga.com #13967] Add travis-ci build status logo to README.md
61 * Feature 4813 (libicinga): [dev.icinga.com #13345] Include argument name for log message about incorrect set_if values
62 * Feature 4908 (Documentation): [dev.icinga.com #13897] Move domain to icinga.com
63 * Feature 4803 (Documentation): [dev.icinga.com #13277] Update Repositories in Docs
64 * Feature 4885 (Documentation): [dev.icinga.com #13671] SLES 12 SP2 libboost_thread package requires libboost_chrono
65 * Feature 4868 (Documentation): [dev.icinga.com #13569] Add more build details to INSTALL.md
66 * Feasture 4869 (Documentation): [dev.icinga.com #13571] Update RELEASE.md
67
68 #### Bugfixes
69
70 * Bug 4950 (IDO): IDO schema update is not compatible to MySQL 5.7
71 * Bug 4882 (libbase): [dev.icinga.com #13655] Crash - Error: parse error: premature EOF bug High libbase
72 * Bug 4867 (libbase) [dev.icinga.com #13567] SIGPIPE shutdown on config reload
73 * Bug 4874 (IDO) [dev.icinga.com #13617] IDO: Timestamps in PostgreSQL may still have a time zone offset
74 * Bug 4877 (IDO) [dev.icinga.com #13633] IDO MySQL schema not working on MySQL 5.7
75 * Bug 4870 (Packages): [dev.icinga.com #13573] SLES11 SP4 dependency on Postgresql >= 8.4
76
77 ### What's New in Version 2.6.0
78
79 #### Changes
80
81 * Client/Satellite setup
82  * The "bottom up" client configuration mode has been deprecated. Check [#13255](https://dev.icinga.com/issues/13255) for additional details and migration.
83 * Linux/Unix daemon
84  * Ensure that Icinga 2 does not leak file descriptors to executed commands. 
85  * There are 2 processes started instead of previously just one process.
86 * Windows client
87  * Package bundles NSClient++ 0.5.0. ITL CheckCommands have been updated too.
88  * Allow to configure the user account for the Icinga 2 service. This is useful if several checks require administrator permissions (e.g. check_update.exe)
89  * Bugfixes for check plugins
90 * Cluster and API
91  * Provide location information for objects and templates in the API
92  * Improve log message for ignored config updates
93  * Fix cluster resync problem with API created objects (hosts, downtimes, etc.)
94  * Fix that API-created objects in a global zone are not synced to child endpoints
95 * Notifications
96  * Several bugfixes for downtime, custom and flapping notifications
97 * New ITL CheckCommands: logstash, glusterfs, iostats
98 * Package builds require a compiler which supports C++11 features (gcc-c++ >= 4.7, clang++)
99 * DB IDO
100  * Schema upgrade required (2.6.0.sql)
101  * This update fixes timestamp columns required by Icinga Web 2 and might take a while. Please ensure to schedule a maintenance task for your database upgrade.
102
103 #### Feature
104
105 * Feature 12566 (API): Provide location information for objects and templates in the API
106 * Feature 13255 (Cluster): Deprecate cluster/client mode "bottom up" w/ repository.d and node update-config
107 * Feature 12844 (Cluster): Check whether nodes are synchronizing the API log before putting them into UNKNOWN
108 * Feature 12623 (Cluster): Improve log message for ignored config updates
109 * Feature 12635 (Configuration): Suppress compiler warnings for auto-generated code
110 * Feature 12575 (Configuration): Implement support for default templates
111 * Feature 12554 (Configuration): Implement a command-line argument for "icinga2 console" to allow specifying a script file
112 * Feature 12544 (Configuration): Remove unused method: ApplyRule::DiscardRules
113 * Feature 10675 (Configuration): Command line option for config syntax validation
114 * Feature 13491 (Documentation): Update README.md and correct project URLs
115 * Feature 13457 (Documentation): Add a note for boolean values in the disk CheckCommand section
116 * Feature 13455 (Documentation): Troubleshooting: Add examples for fetching the executed command line
117 * Feature 13443 (Documentation): Update Windows screenshots in the client documentation
118 * Feature 13437 (Documentation): Add example for concurrent_checks in CheckerComponent object type
119 * Feature 13395 (Documentation): Add a note about removing "conf.d" on the client for "top down command endpoint" setups
120 * Feature 13327 (Documentation): Update API and Library Reference chapters
121 * Feature 13319 (Documentation): Add a note about pinning checks w/ command_endpoint
122 * Feature 13297 (Documentation): Add a note about default template import to the CheckCommand object
123 * Feature 13199 (Documentation): Doc: Swap packages.icinga.com w/ DebMon
124 * Feature 12834 (Documentation): Add more Timeperiod examples in the documentation
125 * Feature 12832 (Documentation): Add an example of multi-parents configuration for the Migration chapter
126 * Feature 12587 (Documentation): Update service monitoring and distributed docs
127 * Feature 12449 (Documentation): Add information about function 'range'
128 * Feature 13449 (ITL): Add tempdir attribute to postgres CheckCommand
129 * Feature 13435 (ITL): Add sudo option to mailq CheckCommand
130 * Feature 13433 (ITL): Add verbose parameter to http CheckCommand
131 * Feature 13431 (ITL): Add timeout option to mysql_health CheckCommand
132 * Feature 12762 (ITL): Add a radius CheckCommand for the radius check provide by nagios-plugins
133 * Feature 12755 (ITL): Add CheckCommand definition for check_logstash
134 * Feature 12739 (ITL): Add timeout option to oracle_health CheckCommand
135 * Feature 12613 (ITL): Add CheckCommand definition for check_iostats
136 * Feature 12516 (ITL): ITL - check_vmware_esx - specify a datacenter/vsphere server for esx/host checks
137 * Feature 12040 (ITL): Add CheckCommand definition for check_glusterfs
138 * Feature 12576 (Installation): Use raw string literals in mkembedconfig
139 * Feature 12564 (Installation): Improve detection for the -flto compiler flag
140 * Feature 12552 (Installation): Set versions for all internal libraries
141 * Feature 12537 (Installation): Update cmake config to require a compiler that supports C++11
142 * Feature 9119 (Installation): Make the user account configurable for the Windows service
143 * Feature 12733 (Packages): Windows Installer should include NSClient++ 0.5.0
144 * Feature 12679 (Plugins): Review windows plugins performance output
145 * Feature 13225 (Tests): Add unit test for notification state/type filter checks
146 * Feature 12530 (Tests): Implement unit tests for state changes
147 * Feature 12562 (libbase): Use lambda functions for INITIALIZE_ONCE
148 * Feature 12561 (libbase): Use 'auto' for iterator declarations
149 * Feature 12555 (libbase): Implement an rvalue constructor for the String and Value classes
150 * Feature 12538 (libbase): Replace BOOST_FOREACH with range-based for loops
151 * Feature 12536 (libbase): Add -fvisibility=hidden to the default compiler flags
152 * Feature 12510 (libbase): Implement an environment variable to keep Icinga from closing FDs on startup
153 * Feature 12509 (libbase): Avoid unnecessary string copies
154 * Feature 12507 (libbase): Remove deprecated functions
155 * Feature 9182 (libbase): Better message for apply errors
156 * Feature 12578 (libicinga): Make sure that libmethods is automatically loaded even when not using the ITL
157
158 #### Bugfixes
159
160 * Bug 12860 (API): Icinga crashes while deleting a config file which doesn't exist anymore
161 * Bug 12667 (API): Crash in HttpRequest::Parse while processing HTTP request
162 * Bug 12621 (API): Invalid API filter error messages
163 * Bug 11541 (API): Objects created in a global zone are not synced to child endpoints
164 * Bug 11329 (API): API requests from execute-script action are too verbose
165 * Bug 13419 (CLI): Wrong help string for node setup cli command argument --master_host
166 * Bug 12741 (CLI): Parse error: "premature EOF" when running "icinga2 node update-config"
167 * Bug 12596 (CLI): Last option highlighted as the wrong one, even when it is not the culprit
168 * Bug 13151 (Cluster): Crash w/ SendNotifications cluster handler and check result with empty perfdata
169 * Bug 11684 (Cluster): Cluster resync problem with API created objects
170 * Bug 10897 (Compat): SCHEDULE_AND_PROPAGATE_HOST_DOWNTIME command missing
171 * Bug 10896 (Compat): SCHEDULE_AND_PROPAGATE_TRIGGERED_HOST_DOWNTIME command missing
172 * Bug 12749 (Configuration): Configuration validation fails when setting tls_protocolmin to TLSv1.2
173 * Bug 12633 (Configuration): Validation does not highlight the correct attribute
174 * Bug 12571 (Configuration): Debug hints for dictionary expressions are nested incorrectly
175 * Bug 12556 (Configuration): Config validation shouldnt allow 'endpoints = [ "" ]'
176 * Bug 13221 (DB IDO): PostgreSQL: Don't use timestamp with timezone for UNIX timestamp columns
177 * Bug 12558 (DB IDO): Getting error during schema update
178 * Bug 12514 (DB IDO): Don't link against libmysqlclient_r
179 * Bug 10502 (DB IDO): MySQL 5.7.9, Incorrect datetime value Error
180 * Bug 13519 (Documentation): "2.1.4. Installation Paths" should contain systemd paths
181 * Bug 13517 (Documentation): Update "2.1.3. Enabled Features during Installation" - outdated "feature list"
182 * Bug 13515 (Documentation): Update package instructions for Fedora
183 * Bug 13411 (Documentation): Missing API headers for X-HTTP-Method-Override
184 * Bug 13407 (Documentation): Fix example in PNP template docs
185 * Bug 13267 (Documentation): Docs: Typo in "CLI commands" chapter
186 * Bug 12933 (Documentation): Docs: wrong heading level for commands.conf and groups.conf
187 * Bug 12831 (Documentation): Typo in the documentation
188 * Bug 12822 (Documentation): Fix some spelling mistakes
189 * Bug 12725 (Documentation): Add documentation for logrotation for the mainlog feature
190 * Bug 12681 (Documentation): Corrections for distributed monitoring chapter
191 * Bug 12664 (Documentation): Docs: Migrating Notification example tells about filters instead of types
192 * Bug 12662 (Documentation): GDB example in the documentation isn't working
193 * Bug 12594 (Documentation): Typo in distributed monitoring docs
194 * Bug 12577 (Documentation): Fix help output for update-links.py
195 * Bug 12995 (Graphite): Performance data writer for Graphite : Values without fraction limited to 2147483647 (7FFFFFFF)
196 * Bug 12849 (ITL): Default values for check_swap are incorrect
197 * Bug 12838 (ITL): snmp_miblist variable to feed the -m option of check_snmp is missing in the snmpv3 CheckCommand object
198 * Bug 12747 (ITL): Problem passing arguments to nscp-local CheckCommand objects
199 * Bug 12588 (ITL): Default disk plugin check should not check inodes
200 * Bug 12586 (ITL): Manubulon: Add missing procurve memory flag
201 * Bug 12573 (ITL): Fix code style violations in the ITL
202 * Bug 12570 (ITL): Incorrect help text for check_swap
203 * Bug 12535 (Installation): logrotate file is not properly generated when the logrotate binary resides in /usr/bin
204 * Bug 13205 (Notifications): Recovery notifications sent for Not-Problem notification type if notified before
205 * Bug 12892 (Notifications): Flapping notifications sent for soft state changes
206 * Bug 12670 (Notifications): Forced custom notification is setting "force_next_notification": true permanently
207 * Bug 12560 (Notifications): Don't send Flapping* notifications when downtime is active
208 * Bug 12549 (Notifications): Fixed downtimes scheduled for a future date trigger DOWNTIMESTART notifications
209 * Bug 12276 (Perfdata): InfluxdbWriter does not write state other than 0
210 * Bug 12155 (Plugins): check_network performance data in invalid format - ingraph
211 * Bug 10489 (Plugins): Windows Agent: performance data of check_perfmon
212 * Bug 10487 (Plugins): Windows Agent: Performance data values for check_perfmon.exe are invalid sometimes
213 * Bug 9831 (Plugins): Implement support for resolving DNS hostnames in check_ping.exe
214 * Bug 12940 (libbase): SIGALRM handling may be affected by recent commit
215 * Bug 12718 (libbase): Crash in ClusterEvents::SendNotificationsAPIHandler
216 * Bug 12545 (libbase): Add missing initializer for WorkQueue::m_NextTaskID
217 * Bug 12534 (libbase): Fix compiler warnings
218 * Bug 8900 (libbase): File descriptors are leaked to child processes which makes SELinux unhappy
219 * Bug 13275 (libicinga): Icinga tries to delete Downtime objects that were statically configured
220 * Bug 13103 (libicinga): Config validation crashes when using command_endpoint without also having an ApiListener object
221 * Bug 12602 (libicinga): Remove unused last_in_downtime field
222 * Bug 12592 (libicinga): Unexpected state changes with max_check_attempts = 2
223 * Bug 12511 (libicinga): Don't update TimePeriod ranges for inactive objects
224
225 ### What's New in Version 2.5.4
226
227 #### Bugfixes
228
229 * Bug 11932 (Checker): many check commands executed at same time when master reload
230
231 ### What's New in Version 2.5.3
232
233 #### Changes
234
235 This release addresses an issue with PostgreSQL support for the IDO database module.
236
237 #### Bugfixes
238
239 * Bug 12533 (DB IDO): ido pgsql migration from 2.4.0 to 2.5.0 : wrong size for config_hash
240
241 ### What's New in Version 2.5.2
242
243 #### Bugfixes
244
245 * Bug 12527 (DB IDO): Newly added group member tables in the IDO database are not updated
246 * Bug 12529 (Checker): Icinga 2 sends SOFT recovery notifications
247
248 ### What's New in Version 2.5.1
249
250 #### Bugfixes
251
252 * Bug 12517 (Notifications): Icinga 2 sends recovery notifications for SOFT NOT-OK states
253
254 ### What's New in Version 2.5.0
255
256 #### Changes
257
258 * InfluxdbWriter feature
259 * API
260     * New endpoints: /v1/variables and /v1/templates (GET requests), /v1/action/generate-ticket (POST request)
261     * State/type filters for notifications/users are now string values (PUT, POST, GET requests)
262 * Configuration
263     * TimePeriod excludes/includes attributes
264     * DateTime object for formatting time strings
265     * New prototype methods: Array#filter, Array#unique, Array#map, Array#reduce
266     * icinga2.conf now includes plugins-contrib, manubulon, windows-plugins, nscp by default (ITL CheckCommand definitions)
267     * Performance improvements (config compiler and validation)
268 * CLI
269     * 'icinga2 object list' formats state/type filters as string values
270     * Compiled config files are now visible with "notice" debug level (hidden by default)
271     * CA serial file now uses a hash value (HA cluster w/ 2 CA directories)
272 * Cluster
273     * There is a known issue with >2 endpoints inside a zone. Icinga 2 will now log a warning.
274     * Support for accepted ciphers and minimum TLS version
275     * Connection and error logging has been improved.
276 * DB IDO
277     * Schema upgrade required (2.5.0.sql)
278     * Incremental config dump (performance boost)
279     * `categories` attribute is now an array. Previous method is deprecated and to be removed.
280     * DbCatLog is not enabled by default anymore.
281     * SSL support for MySQL
282 * New packages
283     * vim-icinga2 for syntax highlighting
284     * libicinga2 (Debian), icinga2-libs (RPM) for Icinga Studio packages
285
286 #### Feature
287
288 * Feature 7355 (libicinga): Exclude option for TimePeriod definitions
289 * Feature 8401 (Packages): Package for syntax highlighting
290 * Feature 9184 (Perfdata): Add timestamp support for GelfWriter
291 * Feature 9264 (ITL): Extend CheckCommand definitions for nscp-local
292 * Feature 9725 (DB IDO): Add SSL support for the IdoMysqlConnection feature
293 * Feature 9839 (Configuration): Implement support for formatting date/time
294 * Feature 9858 (Perfdata): Gelf module: expose 'perfdata' fields for 'CHECK_RESULT' events
295 * Feature 10140 (libicinga): Remove the deprecated IcingaStatusWriter feature
296 * Feature 10480 (Perfdata): Add InfluxDbWriter feature
297 * Feature 10553 (Documentation): Update SELinux documentation
298 * Feature 10669 (ITL): Add IPv4/IPv6 support to the rest of the monitoring-plugins
299 * Feature 10722 (ITL): icinga2.conf: Include plugins-contrib, manubulon, windows-plugins, nscp by default
300 * Feature 10816 (libbase): Add name attribute for WorkQueue class
301 * Feature 10952 (Packages): Provide packages for icinga-studio on Fedora
302 * Feature 11063 (API): Implement SSL cipher configuration support for the API feature
303 * Feature 11290 (API): ApiListener: Force server's preferred cipher
304 * Feature 11292 (API): ApiListener: Make minimum TLS version configurable
305 * Feature 11359 (ITL): Add "retries" option to check_snmp command
306 * Feature 11419 (Configuration): Config parser should not log names of included files by default
307 * Feature 11423 (libicinga): Cleanup downtimes created by ScheduleDowntime
308 * Feature 11445 (Configuration): Allow strings in state/type filters
309 * Feature 11599 (Documentation): Documentation review
310 * Feature 11612 (Configuration): Improve performance for field accesses
311 * Feature 11623 (Installation): Add script for automatically cherry-picking commits for minor versions
312 * Feature 11659 (Configuration): Remove the (unused) 'inherits' keyword
313 * Feature 11706 (API): Improve logging for HTTP API requests
314 * Feature 11739 (Packages): Windows Installer: Remove dependency on KB2999226 package
315 * Feature 11772 (Cluster): Add lag threshold for cluster-zone check
316 * Feature 11837 (Documentation): Use HTTPS for debmon.org links in the documentation
317 * Feature 11869 (ITL): Add CIM port parameter for esxi_hardware CheckCommand
318 * Feature 11875 (Tests): Add debugging mode for Utility::GetTime
319 * Feature 11931 (ITL): Adding option to access ifName for manubulon snmp-interface check command
320 * Feature 11941 (API): Support for enumerating available templates via the API
321 * Feature 11955 (API): Implement support for getting a list of global variables from the API
322 * Feature 11967 (DB IDO): Update DB IDO schema version to 1.14.1
323 * Feature 11968 (DB IDO): Enhance IDO check with schema version info
324 * Feature 11970 (ITL): add check command for plugin check_apache_status
325 * Feature 12006 (ITL): Add check command definitions for kdc and rbl
326 * Feature 12018 (Graphite): Add acknowledgement type to Graphite, InfluxDB, OpenTSDB metadata
327 * Feature 12024 (DB IDO): Change Ido*Connection 'categories' attribute to an array
328 * Feature 12041 (API): API: Add missing downtime_depth attribute
329 * Feature 12061 (ITL): Add check command definition for db2_health
330 * Feature 12106 (DB IDO): Do not populate logentries table by default
331 * Feature 12116 (Cluster): Enhance client disconnect message for "No data received on new API connection."
332 * Feature 12189 (ITL): Add support for "-A" command line switch to CheckCommand "snmp-process"
333 * Feature 12194 (Cluster): Improve log message for connecting nodes without configured Endpoint object
334 * Feature 12201 (Cluster): Improve error messages for failed certificate validation
335 * Feature 12215 (Cluster): Include IP address and port in the "New connection" log message
336 * Feature 12221 (ITL): A lot of missing parameters for (latest) mysql_health
337 * Feature 12222 (Cluster): Log a warning if there are more than 2 zone endpoint members
338 * Feature 12234 (CLI): Add history for icinga2 console
339 * Feature 12247 (Configuration): Add map/reduce and filter functionality for the Array class
340 * Feature 12254 (API): Remove obsolete debug log message
341 * Feature 12256 (ITL): Add check command definition for check_graphite
342 * Feature 12287 (Cluster): Enhance TLS handshake error messages with connection information
343 * Feature 12304 (Notifications): Add the notification type into the log message
344 * Feature 12314 (ITL): Add command definition for check_mysql_query
345 * Feature 12327 (API): Support for determining the Icinga 2 version via the API
346 * Feature 12329 (libicinga): Implement process_check_result script method for the Checkable class
347 * Feature 12336 (libbase): Improve logging for the WorkQueue class
348 * Feature 12338 (Configuration): Move internal script functions into the 'Internal' namespace
349 * Feature 12386 (Documentation): Rewrite Client and Cluster chapter and; add service monitoring chapter
350 * Feature 12389 (libbase): Include compiler name/version and build host name in --version
351 * Feature 12392 (ITL): Add custom variables for all check_swap arguments
352 * Feature 12393 (libbase): Implement support for marking functions as deprecated
353 * Feature 12407 (CLI): Implement support for inspecting variables with LLDB/GDB
354 * Feature 12408 (Configuration): Implement support for namespaces
355 * Feature 12412 (Documentation): Add URL and short description for Monitoring Plugins inside the ITL documentation
356 * Feature 12424 (ITL): Add perfsyntax parameter to nscp-local-counter CheckCommand
357 * Feature 12426 (Configuration): Implement comparison operators for the Array class
358 * Feature 12433 (API): Add API action for generating a PKI ticket
359 * Feature 12434 (DB IDO): Remove unused code from the IDO classes
360 * Feature 12435 (DB IDO): Incremental updates for the IDO database
361 * Feature 12448 (libbase): Improve performance for type lookups
362 * Feature 12450 (Cluster): Improve performance for Endpoint config validation
363 * Feature 12457 (libbase): Remove unnecessary Dictionary::Contains calls
364 * Feature 12468 (ITL): Add interfacetable CheckCommand options --trafficwithpkt and --snmp-maxmsgsize
365 * Feature 12477 (Documentation): Development docs: Add own section for gdb backtrace from a running process
366 * Feature 12481 (libbase): Remove some unused #includes
367
368 #### Bugfixes
369
370 * Bug 7354 (libicinga): Disable immediate hard state after first checkresult
371 * Bug 9242 (Cluster): Custom notification external commands do not work in a master-master setup
372 * Bug 9848 (libbase): Function::Invoke should optionally register ScriptFrame
373 * Bug 10061 (DB IDO): IDO: icinga_host/service_groups alias columns are TEXT columns
374 * Bug 10066 (DB IDO): Missing indexes for icinga_endpoints* and icinga_zones* tables in DB IDO schema
375 * Bug 10069 (DB IDO): IDO: check_source should not be a TEXT field
376 * Bug 10070 (DB IDO): IDO: there is no usable object index on icinga_{scheduleddowntime,comments}
377 * Bug 10075 (libbase): Race condition in CreatePipeOverlapped
378 * Bug 10363 (Notifications): Notification times w/ empty begin/end specifications prevent sending notifications
379 * Bug 10570 (API): /v1 returns HTML even if JSON is requested
380 * Bug 10903 (Perfdata): GELF multi-line output
381 * Bug 10937 (Configuration): High CPU usage with self-referenced parent zone config
382 * Bug 11182 (DB IDO): IDO: entry_time of all comments is set to the date and time when Icinga 2 was restarted
383 * Bug 11196 (Cluster): High load when pinning command endpoint on HA cluster
384 * Bug 11483 (libicinga): Numbers are not properly formatted in runtime macro strings
385 * Bug 11562 (Notifications): last_problem_notification should be synced in HA cluster
386 * Bug 11590 (Notifications): notification interval = 0 not honoured in HA clusters
387 * Bug 11622 (Configuration): Don't allow flow control keywords outside of other flow control constructs
388 * Bug 11648 (Packages): Reload permission error with SELinux
389 * Bug 11650 (Packages): RPM update starts disabled icinga2 service
390 * Bug 11688 (DB IDO): Outdated downtime/comments not removed from IDO database (restart)
391 * Bug 11730 (libicinga): Icinga 2 client gets killed during network scans
392 * Bug 11782 (Packages): Incorrect filter in pick.py
393 * Bug 11793 (Documentation): node setup: Add a note for --endpoint syntax for client-master connection
394 * Bug 11817 (Installation): Windows: Error with repository handler (missing /var/lib/icinga2/api/repository path)
395 * Bug 11823 (DB IDO): Volatile check results for OK->OK transitions are logged into DB IDO statehistory
396 * Bug 11825 (libicinga): Problems with check scheduling for HARD state changes (standalone/command_endpoint)
397 * Bug 11832 (Tests): Boost tests are missing a dependency on libmethods
398 * Bug 11847 (Documentation): Missing quotes for API action URL
399 * Bug 11851 (Notifications): Downtime notifications do not pass author and comment
400 * Bug 11862 (libicinga): SOFT OK-state after returning from a soft state
401 * Bug 11887 (ITL): Add "fuse.gvfsd-fuse" to the list of excluded file systems for check_disk
402 * Bug 11890 (Configuration): Config validation should not delete comments/downtimes w/o reference
403 * Bug 11894 (Configuration): Incorrect custom variable name in the hosts.conf example config
404 * Bug 11898 (libicinga): last SOFT state should be hard (max_check_attempts)
405 * Bug 11899 (libicinga): Flapping Notifications dependent on state change
406 * Bug 11903 (Documentation): Fix systemd client command formatting
407 * Bug 11905 (Documentation): Improve "Endpoint" documentation
408 * Bug 11926 (API): Trying to delete an object protected by a permissions filter, ends up deleting all objects that match the filter instead
409 * Bug 11933 (DB IDO): SOFT state changes with the same state are not logged
410 * Bug 11962 (DB IDO): Overflow in current_notification_number column in DB IDO MySQL
411 * Bug 11991 (Documentation): Incorrect URL for API examples in the documentation
412 * Bug 11993 (DB IDO): Comment/Downtime delete queries are slow
413 * Bug 12003 (libbase): Hang in TlsStream::Handshake
414 * Bug 12008 (Documentation): Add a note about creating Zone/Endpoint objects with the API
415 * Bug 12016 (Configuration): ConfigWriter::EmitScope incorrectly quotes dictionary keys
416 * Bug 12022 (Configuration): Icinga crashes when using include_recursive in an object definition
417 * Bug 12029 (Documentation): Migration docs still show unsupported CHANGE_*MODATTR external commands
418 * Bug 12044 (Packages): Icinga fails to build with OpenSSL 1.1.0
419 * Bug 12046 (Documentation): Typo in Manubulon CheckCommand documentation
420 * Bug 12067 (Documentation): Documentation: Setting up Plugins section is broken
421 * Bug 12077 (Documentation): Add a note to the docs that API POST updates to custom attributes/groups won't trigger re-evaluation
422 * Bug 12085 (DB IDO): deadlock in ido reconnect
423 * Bug 12092 (API): Icinga incorrectly disconnects all endpoints if one has a wrong certificate
424 * Bug 12098 (Configuration): include_recursive should gracefully handle inaccessible files
425 * Bug 12099 (Packages): Build fails with Visual Studio 2013
426 * Bug 12100 (libbase): Ensure to clear the SSL error queue before calling SSL_{read,write,do_handshake}
427 * Bug 12107 (DB IDO): Add missing index on state history for DB IDO cleanup
428 * Bug 12135 (ITL): ITL: check_iftraffic64.pl default values, wrong postfix value in CheckCommand
429 * Bug 12144 (Documentation): pkg-config is not listed as a build requirement in INSTALL.md
430 * Bug 12147 (DB IDO): IDO module starts threads before daemonize
431 * Bug 12179 (Cluster): Duplicate messages for command_endpoint w/ master and satellite
432 * Bug 12180 (Cluster): CheckerComponent sometimes fails to schedule checks in time
433 * Bug 12193 (Cluster): Increase cluster reconnect interval
434 * Bug 12199 (API): Fix URL encoding for '&'
435 * Bug 12204 (Documentation): Improve author information about check_yum
436 * Bug 12210 (DB IDO): Do not clear {host,service,contact}group_members tables on restart
437 * Bug 12216 (libicinga): icinga check reports "-1" for minimum latency and execution time and only uptime has a number but 0
438 * Bug 12217 (Documentation): Incorrect documentation about apply rules in zones.d directories
439 * Bug 12219 (Documentation): Missing explanation for three level clusters with CSR auto-signing
440 * Bug 12225 (libicinga): Icinga stats min_execution_time and max_execution_time are invalid
441 * Bug 12227 (Perfdata): Incorrect escaping / formatting of perfdata to InfluxDB
442 * Bug 12237 (Installation): Increase default systemd timeout
443 * Bug 12257 (Notifications): Notification interval mistimed
444 * Bug 12259 (Documentation): Incorrect API permission name for /v1/status in the documentation
445 * Bug 12267 (Notifications): Multiple notifications when master fails
446 * Bug 12274 (ITL): -q option for check_ntp_time is wrong
447 * Bug 12288 (DB IDO): Change the way outdated comments/downtimes are deleted on restart
448 * Bug 12293 (Notifications): Missing notification for recovery during downtime
449 * Bug 12302 (Cluster): Remove obsolete README files in tools/syntax
450 * Bug 12310 (Notifications): Notification sent too fast when one master fails
451 * Bug 12318 (Configuration): Icinga doesn't delete temporary icinga2.debug file when config validation fails
452 * Bug 12331 (libbase): Fix building Icinga with -fvisibility=hidden
453 * Bug 12333 (Notifications): Incorrect downtime notification events
454 * Bug 12334 (libbase): Handle I/O errors while writing the Icinga state file more gracefully
455 * Bug 12390 (libbase): Disallow casting "" to an Object
456 * Bug 12391 (libbase): Don't violate POSIX by ensuring that the argument to usleep(3) is less than 1000000
457 * Bug 12395 (libicinga): Flexible downtimes should be removed after trigger_time+duration
458 * Bug 12401 (DB IDO): Fixed downtime start does not update actual_start_time
459 * Bug 12402 (Notifications): Notification resent, even if interval = 0
460 * Bug 12404 (Notifications): Add log message if notifications are forced (i.e. filters are not checked)
461 * Bug 12409 (Configuration): 'use' keyword cannot be used with templates
462 * Bug 12416 (Documentation): The description for the http_certificate attribute doesn't have the right default value
463 * Bug 12417 (DB IDO): IDO does duplicate config updates
464 * Bug 12418 (DB IDO): IDO marks objects as inactive on shutdown
465 * Bug 12422 (CLI): pki sign-csr does not log where it is writing the certificate file
466 * Bug 12425 (libicinga): CompatUtility::GetCheckableNotificationStateFilter is returning an incorrect value
467 * Bug 12428 (DB IDO): Fix the "ido" check command for use with command_endpoint
468 * Bug 12430 (DB IDO): ido CheckCommand returns returns "Could not connect to database server" when HA enabled
469 * Bug 12432 (Cluster): Only allow sending command_endpoint checks to directly connected child zones
470 * Bug 12438 (libbase): Replace GetType()->GetName() calls with GetReflectionType()->GetName()
471 * Bug 12442 (Documentation): Missing documentation for "legacy-timeperiod" template
472 * Bug 12452 (Installation): Remove unused functions from icinga-installer
473 * Bug 12453 (libbase): Use hash-based serial numbers for new certificates
474 * Bug 12454 (API): API: action schedule-downtime requires a duration also when fixed is true
475 * Bug 12458 (DB IDO): Insert fails for the icinga_scheduleddowntime table due to duplicate key
476 * Bug 12459 (DB IDO): Query for customvariablestatus incorrectly updates the host's/service's insert ID
477 * Bug 12460 (Cluster): DB IDO started before daemonizing (no systemd)
478 * Bug 12461 (DB IDO): IDO query fails due to key contraint violation for the icinga_customvariablestatus table
479 * Bug 12464 (API): API: events for DowntimeTriggered does not provide needed information
480 * Bug 12473 (Documentation): Docs: API example uses wrong attribute name
481 * Bug 12474 (libmethods): ClrCheck is null on *nix
482 * Bug 12475 (Cluster): Incorrect certificate validation error message
483 * Bug 12487 (Configuration): Memory leak when using closures
484 * Bug 12488 (Documentation): Typo in Notification object documentation
485
486 ### What's New in Version 2.4.10
487
488 #### Bugfixes
489
490 * Bug 11812 (Checker): Checker component doesn't execute any checks for command_endpoint
491
492 ### What's New in Version 2.4.9
493
494 #### Changes
495
496 This release fixes a number of issues introduced in 2.4.8.
497
498 #### Bugfixes
499
500 * Bug 11801 (Perfdata): Error: Function call 'rename' for file '/var/spool/icinga2/tmp/service-perfdata' failed with error code 2, 'No such file or directory'
501 * Bug 11804 (Configuration): Segfault when trying to start 2.4.8
502 * Bug 11807 (Compat): Command Pipe thread 100% CPU Usage
503
504 ### What's New in Version 2.4.8
505
506 #### Changes
507
508 * Bugfixes
509 * Support for limiting the maximum number of concurrent checks (new configuration option) 
510 * HA-aware features now wait for connected cluster nodes in the same zone (e.g. DB IDO)
511 * The 'icinga' check now alerts on failed reloads
512
513 #### Feature
514
515 * Feature 8137 (Checker): Maximum concurrent service checks
516 * Feature 9236 (Perfdata): PerfdataWriter: Better failure handling for file renames across file systems
517 * Feature 9997 (libmethods): "icinga" check should have state WARNING when the last reload failed
518 * Feature 10581 (ITL): Provide icingacli in the ITL
519 * Feature 11556 (libbase): Add support for subjectAltName in SSL certificates
520 * Feature 11651 (CLI): Implement SNI support for the CLI commands
521 * Feature 11720 (ITL): 'disk' CheckCommand: Exclude 'cgroup' and 'tracefs' by default
522 * Feature 11748 (Cluster): Remove unused cluster commands
523 * Feature 11765 (Cluster): Only activate HARunOnce objects once there's a cluster connection
524 * Feature 11768 (Documentation): Add the category to the generated changelog
525
526 #### Bugfixes
527
528 * Bug 9989 (Configuration): Service apply without name possible
529 * Bug 10426 (libicinga): Icinga crashes with a segfault on receiving a lot of check results for nonexisting hosts/services
530 * Bug 10717 (Configuration): Comments and downtimes of deleted checkable objects are not deleted
531 * Bug 11046 (Cluster): Icinga2 agent gets stuck after disconnect and won't relay messages
532 * Bug 11112 (Compat): Empty author/text attribute for comment/downtimes external commands causing crash
533 * Bug 11147 (libicinga): "day -X" time specifications are parsed incorrectly
534 * Bug 11158 (libicinga): Crash with empty ScheduledDowntime 'ranges' attribute
535 * Bug 11374 (API): Icinga2 API: deleting service with cascade=1 does not delete dependant notification
536 * Bug 11390 (Compat): Command pipe overloaded: Can't send external Icinga command to the local command file
537 * Bug 11396 (API): inconsistent API /v1/objects/* response for PUT requests
538 * Bug 11589 (libicinga): notification sent out during flexible downtime
539 * Bug 11645 (Documentation): Incorrect chapter headings for Object#to_string and Object#type
540 * Bug 11646 (Configuration): Wrong log severity causes segfault
541 * Bug 11686 (API): Icinga Crash with the workflow Create_Host-> Downtime for the Host ->  Delete Downtime -> Remove Host
542 * Bug 11711 (libicinga): Expired downtimes are not removed
543 * Bug 11714 (libbase): Crash in UnameHelper
544 * Bug 11742 (Documentation): Missing documentation for event commands w/ execution bridge
545 * Bug 11757 (API): API: Missing error handling for invalid JSON request body
546 * Bug 11767 (DB IDO): Ensure that program status updates are immediately updated in DB IDO
547 * Bug 11779 (API): Incorrect variable names for joined fields in filters
548
549 ### What's New in Version 2.4.7
550
551 #### Bugfixes
552
553 * Bug 11639: Crash in IdoMysqlConnection::ExecuteMultipleQueries
554
555 ### What's New in Version 2.4.6
556
557 #### Feature
558
559 * Feature 11638: Update RELEASE.md
560
561 #### Bugfixes
562
563 * Bug 11628: Docs: Zone attribute 'endpoints' is an array
564 * Bug 11634: Icinga 2 fails to build on Ubuntu Xenial
565 * Bug 11635: Failed assertion in IdoPgsqlConnection::FieldToEscapedString
566
567 ### What's New in Version 2.4.5
568
569 #### Changes
570
571 * Windows Installer changed from NSIS to MSI
572 * New configuration attribute for hosts and services: check_timeout (overrides the CheckCommand's timeout when set)
573 * ITL updates
574 * Lots of bugfixes
575
576 #### Feature
577
578 * Feature 9283: Implement support for overriding check command timeout
579 * Feature 9618: Add Windows setup wizard screenshots
580 * Feature 11098: Add --method parameter for check_{oracle,mysql,mssql}_health CheckCommands
581 * Feature 11194: Add --units, --rate and --rate-multiplier support for the snmpv3 check command
582 * Feature 11399: Update .mailmap for Markus Frosch
583 * Feature 11437: Add silent install / reference to NSClient++ to documentation
584 * Feature 11449: Build 64-bit packages for Windows
585 * Feature 11473: Update NSClient++ to version 0.4.4.19
586 * Feature 11474: Install 64-bit version of NSClient++ on 64-bit versions of Windows
587 * Feature 11585: Make sure to update the agent wizard banner
588 * Feature 11587: Update chocolatey uninstall script for the MSI package
589
590 #### Bugfixes
591
592 * Bug 9249: logrotate fails since the "su" directive was removed
593 * Bug 10624: Add application manifest for the Windows agent wizard
594 * Bug 10843: DB IDO: downtime is not in effect after restart
595 * Bug 11106: Too many assign where filters cause stack overflow
596 * Bug 11224: Socket Exceptions (Operation not permitted) while reading from API
597 * Bug 11227: Downtimes and Comments are not synced to child zones
598 * Bug 11258: Incorrect base URL in the icinga-rpm-release packages for Fedora
599 * Bug 11336: Use retry_interval instead of check_interval for first OK -> NOT-OK state change
600 * Bug 11347: Symlink subfolders not followed/considered for config files
601 * Bug 11382: Downtimes are not always activated/expired on restart
602 * Bug 11384: Remove dependency for .NET 3.5 from the chocolatey package
603 * Bug 11387: IDO: historical contact notifications table column notification_id is off-by-one
604 * Bug 11402: Explain how to use functions for wildcard matches for arrays and/or dictionaries in assign where expressions
605 * Bug 11407: Docs: Remove the migration script chapter
606 * Bug 11434: Config validation for Notification objects should check whether the state filters are valid
607 * Bug 11435: Icinga 2 Windows Agent does not honor install path during upgrade
608 * Bug 11438: Remove semi-colons in the auto-generated configs
609 * Bug 11439: Update the CentOS installation documentation
610 * Bug 11440: Docs: Cluster manual SSL generation formatting is broken
611 * Bug 11455: ConfigSync broken from 2.4.3. to 2.4.4 under Windows
612 * Bug 11462: Error compiling icinga2 targeted for x64 on Windows
613 * Bug 11475: FatalError() returns when called before Application.Run
614 * Bug 11482: API User gets wrongly authenticated (client_cn and no password)
615 * Bug 11484: Overwriting global type variables causes crash in ConfigItem::Commit()
616 * Bug 11494: Update documentation URL for Icinga Web 2
617 * Bug 11522: Make the socket event engine configurable
618 * Bug 11534: DowntimesExpireTimerHandler crashes Icinga2 with <unknown function>
619 * Bug 11542: make install overwrites configuration files
620 * Bug 11559: Segfault during config validation if host exists, service does not exist any longer and downtime expires
621 * Bug 11564: Incorrect link in the documentation
622 * Bug 11567: Navigation attributes are missing in /v1/objects/<type>
623 * Bug 11574: Package fails to build on *NIX
624 * Bug 11577: Compiler warning in NotifyActive
625 * Bug 11582: icinga2 crashes when a command_endpoint is set, but the api feature is not active
626 * Bug 11586: icinga2-installer.exe doesn't wait until NSIS uninstall.exe exits
627 * Bug 11592: Remove instance_name from Ido*Connection example
628 * Bug 11610: Windows installer does not copy "features-enabled" on upgrade
629 * Bug 11617: Vim Syntax Highlighting does not work with assign where
630
631 ### What's New in Version 2.4.4
632
633 #### Feature
634
635 * Feature 10358: ITL: Allow to enforce specific SSL versions using the http check command
636 * Feature 11205: Add "query" option to check_postgres command.
637
638 #### Bugfixes
639
640 * Bug 9642: Flapping notifications are sent for hosts/services which are in a downtime
641 * Bug 9969: Problem notifications while Flapping is active
642 * Bug 10225: Host notification type is PROBLEM but should be RECOVERY
643 * Bug 10231: MkDirP not working on Windows
644 * Bug 10766: DB IDO: User notification type filters are incorrect
645 * Bug 10770: Status code 200 even if an object could not be deleted.
646 * Bug 10795: http check's URI is really just Path
647 * Bug 10976: Explain how to join hosts/services for /v1/objects/comments
648 * Bug 11107: ITL: Missing documentation for nwc_health "mode" parameter
649 * Bug 11159: Common name in node wizard isn't case sensitive
650 * Bug 11208: CMake does not find MySQL libraries on Windows
651 * Bug 11209: Wrong log message for trusted cert in node setup command
652 * Bug 11240: DEL_DOWNTIME_BY_HOST_NAME does not accept optional arguments
653 * Bug 11248: Active checks are executed even though passive results are submitted
654 * Bug 11257: Incorrect check interval when passive check results are used
655 * Bug 11273: Services status updated multiple times within check_interval even though no retry was triggered
656 * Bug 11289: epoll_ctl might cause oops on Ubuntu trusty
657 * Bug 11320: Volatile transitions from HARD NOT-OK->NOT-OK do not trigger notifications
658 * Bug 11328: Typo in API docs
659 * Bug 11331: Update build requirements for SLES 11 SP4
660 * Bug 11349: 'icinga2 feature list' fails when all features are disabled
661 * Bug 11350: Docs: Add API examples for creating services and check commands
662 * Bug 11352: Segmentation fault during 'icinga2 daemon -C'
663 * Bug 11369: Chocolatey package is missing uninstall function
664 * Bug 11385: Update development docs to use 'thread apply all bt full'
665
666 ### What's New in Version 2.4.3
667
668 #### Bugfixes
669
670 * Bug 11211: Permission problem after running icinga2 node wizard
671 * Bug 11212: Wrong permissions for files in /var/cache/icinga2/*
672
673 ### What's New in Version 2.4.2
674
675 #### Changes
676
677 * ITL
678     Additional arguments for check_disk
679     Fix incorrect path for the check_hpasm plugin
680     New command: check_iostat
681     Fix incorrect variable names for the check_impi plugin
682 * Cluster
683     Improve cluster performance
684     Fix connection handling problems (multiple connections for the same endpoint)
685 * Performance improvements for the DB IDO modules
686 * Lots and lots of various other bugfixes
687 * Documentation updates
688
689 #### Feature
690
691 * Feature 10660: Add CMake flag for disabling the unit tests
692 * Feature 10777: Add check_iostat to ITL
693 * Feature 10787: Add "-x" parameter in command definition for disk-windows CheckCommand
694 * Feature 10807: Raise a config error for "Checkable" objects in global zones
695 * Feature 10857: DB IDO: Add a log message when the connection handling is completed
696 * Feature 10860: Log DB IDO query queue stats
697 * Feature 10880: "setting up check plugins" section should be enhanced with package manager examples
698 * Feature 10920: Add Timeout parameter to snmpv3 check
699 * Feature 10947: Add example how to use custom functions in attributes
700 * Feature 10964: Troubleshooting: Explain how to fetch the executed command
701 * Feature 10988: Support TLSv1.1 and TLSv1.2 for the cluster transport encryption
702 * Feature 11037: Add String#trim
703 * Feature 11138: Checkcommand Disk : Option Freespace-ignore-reserved
704
705 #### Bugfixes
706
707 * Bug 7287: Re-checks scheduling w/ retry_interval
708 * Bug 8714: Add priority queue for disconnect/programstatus update events
709 * Bug 8976: DB IDO: notification_id for contact notifications is out of range
710 * Bug 10226: Icinga2 reload timeout results in killing old and new process because of systemd
711 * Bug 10449: Livestatus log query - filter "class" yields empty results
712 * Bug 10458: Incorrect SQL command for creating the user of the PostgreSQL DB for the IDO
713 * Bug 10460: A PgSQL DB for the IDO can't be created w/ UTF8
714 * Bug 10497: check_memory and check_swap plugins do unit conversion and rounding before percentage calculations resulting in imprecise percentages
715 * Bug 10544: check_network performance data in invalid format
716 * Bug 10554: Non-UTF8 characters from plugins causes IDO to fail
717 * Bug 10655: API queries cause memory leaks
718 * Bug 10700: Crash in ExternalCommandListener
719 * Bug 10711: Zone::CanAccessObject is very expensive
720 * Bug 10713: ApiListener::ReplayLog can block with a lot of clients
721 * Bug 10714: API is not working on wheezy
722 * Bug 10724: Remove the local zone name question in node wizard
723 * Bug 10728: node wizard does not remember user defined port
724 * Bug 10736: Missing num_hosts_pending in /v1/status/CIB
725 * Bug 10739: Crash on startup with incorrect directory permissions
726 * Bug 10744: build of icinga2 with gcc 4.4.7 segfaulting with ido
727 * Bug 10745: ITL check command possibly mistyped variable names
728 * Bug 10748: Missing path in mkdir() exceptions
729 * Bug 10760: Disallow lambda expressions where side-effect-free expressions are not allowed
730 * Bug 10765: Avoid duplicate config and status updates on startup
731 * Bug 10773: chcon partial context error in safe-reload prevents reload
732 * Bug 10779: Wrong postgresql-setup initdb command for RHEL7
733 * Bug 10780: The hpasm check command is using the PluginDir constant
734 * Bug 10784: Incorrect information in --version on Linux
735 * Bug 10806: Missing SUSE repository for monitoring plugins documentation
736 * Bug 10817: Failed IDO query for icinga_downtimehistory
737 * Bug 10818: Use NodeName in null and random checks
738 * Bug 10819: Cluster config sync ignores zones.d from API packages
739 * Bug 10824: Windows build fails with latest git master
740 * Bug 10825: Missing documentation for API packages zones.d config sync
741 * Bug 10826: Build error with older CMake versions on VERSION_LESS compare
742 * Bug 10828: Relative path in include_zones does not work
743 * Bug 10829: IDO breaks when writing to icinga_programstatus with latest snapshots
744 * Bug 10830: Config validation doesn't fail when templates are used as object names
745 * Bug 10852: Formatting problem in "Advanced Filter" chapter
746 * Bug 10855: Implement support for re-ordering groups of IDO queries
747 * Bug 10862: Evaluate if CanExecuteQuery/FieldToEscapedString lead to exceptions on !m_Connected
748 * Bug 10867: "repository add" cli command writes invalid "type" attribute
749 * Bug 10883: Icinga2 crashes in IDO when removing a comment
750 * Bug 10890: Remove superfluous #ifdef
751 * Bug 10891: is_active in IDO is only re-enabled on "every second" restart
752 * Bug 10908: Typos in the "troubleshooting" section of the documentation
753 * Bug 10923: API actions: Decide whether fixed: false is the right default
754 * Bug 10931: Exception stack trace on icinga2 client when the master reloads the configuration
755 * Bug 10932: Cluster config sync: Ensure that /var/lib/icinga2/api/zones/* exists
756 * Bug 10935: Logrotate on systemd distros should use systemctl not service
757 * Bug 10948: Icinga state file corruption with temporary file creation
758 * Bug 10956: Compiler warnings in lib/remote/base64.cpp
759 * Bug 10959: Better explaination for array values in "disk" CheckCommand docs
760 * Bug 10963: high load and memory consumption on icinga2 agent v2.4.1
761 * Bug 10968: Race condition when using systemd unit file
762 * Bug 10974: Modified attributes do not work for the IcingaApplication object w/ external commands
763 * Bug 10979: Mistake in mongodb command definition (mongodb_replicaset)
764 * Bug 10981: Incorrect name in AUTHORS
765 * Bug 10989: Escaped sequences not properly generated with 'node update-config'
766 * Bug 10991: Stream buffer size is 512 bytes, could be raised
767 * Bug 10998: Incorrect IdoPgSqlConnection Example in Documentation
768 * Bug 11006: Segfault in ApiListener::ConfigUpdateObjectAPIHandler
769 * Bug 11014: Check event duplication with parallel connections involved
770 * Bug 11019: next_check noise in the IDO
771 * Bug 11020: Master reloads with agents generate false alarms
772 * Bug 11065: Deleting an object via API does not disable it in DB IDO
773 * Bug 11074: Partially missing escaping in doc/7-icinga-template-library.md
774 * Bug 11075: Outdated link to icingaweb2-module-nagvis
775 * Bug 11083: Ensure that config sync updates are always sent on reconnect
776 * Bug 11085: Crash in ConfigItem::RunWithActivationContext
777 * Bug 11088: API queries on non-existant objects cause exception
778 * Bug 11096: Windows build fails on InterlockedIncrement type
779 * Bug 11103: Problem with hostgroup_members table cleanup
780 * Bug 11111: Clean up unused variables a bit
781 * Bug 11118: Cluster WQ thread dies after fork()
782 * Bug 11122: Connections are not cleaned up properly
783 * Bug 11132: YYYY-MM-DD time specs are parsed incorrectly
784 * Bug 11178: Documentation: Unescaped pipe character in tables
785 * Bug 11179: CentOS 5 doesn't support epoll_create1
786 * Bug 11204: "node setup" tries to chown() files before they're created
787
788 ### What's New in Version 2.4.1
789
790 #### Changes
791
792 * ITL
793     * Add running_kernel_use_sudo option for the running_kernel check
794 * Configuration
795     * Add global constants: `PlatformName`. `PlatformVersion`, `PlatformKernel` and `PlatformKernelVersion`
796 * CLI
797     * Use NodeName and ZoneName constants for 'node setup' and 'node wizard' 
798
799 #### Feature
800
801 * Feature 10622: Add by_ssh_options argument for the check_by_ssh plugin
802 * Feature 10693: Add running_kernel_use_sudo option for the running_kernel check
803 * Feature 10716: Use NodeName and ZoneName constants for 'node setup' and 'node wizard'
804
805 #### Bugfixes
806
807 * Bug 10528: Documentation example in "Access Object Attributes at Runtime" doesn't work correctly
808 * Bug 10615: Build fails on SLES 11 SP3 with GCC 4.8
809 * Bug 10632: "node wizard" does not ask user to verify SSL certificate
810 * Bug 10641: API setup command incorrectly overwrites existing certificates
811 * Bug 10643: Icinga 2 crashes when ScheduledDowntime objects are used
812 * Bug 10645: Documentation for schedule-downtime is missing required paremeters
813 * Bug 10648: lib/base/process.cpp SIGSEGV on Debian squeeze / RHEL 6
814 * Bug 10661: Incorrect web inject URL in documentation
815 * Bug 10663: Incorrect redirect for stderr in /usr/lib/icinga2/prepare-dirs
816 * Bug 10667: Indentation in command-plugins.conf
817 * Bug 10677: node wizard checks for /var/lib/icinga2/ca directory but not the files
818 * Bug 10690: CLI command 'repository add' doesn't work
819 * Bug 10692: Fix typos in the documentation
820 * Bug 10708: Windows setup wizard crashes when InstallDir registry key is not set
821 * Bug 10710: Incorrect path for icinga2 binary in development documentation
822 * Bug 10720: Remove --master_zone from --help because it is currently not implemented
823
824 ### What's New in Version 2.4.0
825
826 #### Changes
827
828 * API
829     * RESTful API with basic auth or client certificates
830     * Filters, types, permissions
831     * configuration package management
832     * query/create/modify/delete config objects at runtime
833     * status queries for global stats
834     * actions (e.g. acknowledge all service problems)
835     * event streams
836 * ITL and Plugin Check Command definitions
837     * The 'running_kernel' check command was moved to the plugins-contrib section. You have to update your config to include 'plugins-contrib'
838 * Configuration
839     * The global constants Enable* and Vars have been removed. Use the IcingaApplication object attributes instead.
840 * Features
841     * New Graphite tree. Please check the documentation how enable the legacy schema.
842     * IcingaStatusWriter feature has been deprecated and will be removed in future versions.
843     * Modified attributes are not exposed as bit mask to external interfaces anymore (api related changes). External commands like CHANGE_*_MODATTR have been removed.
844
845 #### Feature
846
847 * Feature 7709: Validators should be implemented in (auto-generated) native code
848 * Feature 8093: Add icinga, cluster, cluster-zone check information to the ApiListener status handler
849 * Feature 8149: graphite writer should pass "-" in host names and "." in perf data
850 * Feature 8666: Allow some of the Array and Dictionary methods to be inlined by the compiler
851 * Feature 8688: Add embedded DB IDO version health check
852 * Feature 8689: Add support for current and current-1 db ido schema version
853 * Feature 8690: 'icinga2 console' should serialize temporary attributes (rather than just config + state)
854 * Feature 8738: Implement support for CLIENT_MULTI_STATEMENTS
855 * Feature 8741: Deprecate IcingaStatusWriter feature
856 * Feature 8775: Move the base command templates into libmethods
857 * Feature 8776: Implement support for libedit
858 * Feature 8791: Refactor the startup process
859 * Feature 8832: Implement constructor-style casts
860 * Feature 8842: Add support for the C++11 keyword 'override'
861 * Feature 8867: Use DebugHint information when reporting validation errors
862 * Feature 8890: Move implementation code from thpp files into separate files
863 * Feature 8922: Avoid unnecessary dictionary lookups
864 * Feature 9044: Remove the ScopeCurrent constant
865 * Feature 9068: Implement sandbox mode for the config parser
866 * Feature 9074: Basic API framework
867 * Feature 9076: Reflection support for the API
868 * Feature 9077: Implement filters for the API
869 * Feature 9078: Event stream support for the API
870 * Feature 9079: Implement status queries for the API
871 * Feature 9080: Add commands (actions) for the API
872 * Feature 9081: Add modified attribute support for the API
873 * Feature 9082: Runtime configuration for the API
874 * Feature 9083: Configuration file management for the API
875 * Feature 9084: Enable the ApiListener by default
876 * Feature 9085: Certificate-based authentication for the API
877 * Feature 9086: Password-based authentication for the API
878 * Feature 9087: Create default administrative user
879 * Feature 9088: API permissions
880 * Feature 9091: API status queries
881 * Feature 9093: Changelog for modified attributes
882 * Feature 9095: Disallow changes for certain config attributes at runtime
883 * Feature 9096: Dependency tracking for objects
884 * Feature 9098: Update modules to support adding and removing objects at runtime
885 * Feature 9099: Implement support for writing configuration files
886 * Feature 9100: Multiple sources for zone configuration tree
887 * Feature 9101: Commands for adding and removing objects
888 * Feature 9102: Support validating configuration changes
889 * Feature 9103: Staging for configuration validation
890 * Feature 9104: Implement config file management commands
891 * Feature 9105: API Documentation
892 * Feature 9175: Move 'running_kernel' check command to plugins-contrib 'operating system' section
893 * Feature 9286: DB IDO/Livestatus: Add zone object table w/ endpoint members
894 * Feature 9414: "-Wno-deprecated-register" compiler option breaks builds on SLES 11
895 * Feature 9447: Implement support for HTTP
896 * Feature 9448: Define RESTful url schema
897 * Feature 9461: New Graphite schema
898 * Feature 9470: Implement URL parser
899 * Feature 9471: Implement ApiUser type
900 * Feature 9594: Implement base64 de- and encoder
901 * Feature 9614: Register ServiceOK, ServiceWarning, HostUp, etc. as constants
902 * Feature 9647: Move url to /lib/remote from /lib/base
903 * Feature 9689: Add exceptions for Utility::MkDir{,P}
904 * Feature 9693: Add Array::FromVector() method
905 * Feature 9698: Implement support for X-HTTP-Method-Override
906 * Feature 9704: String::Trim() should return a new string rather than modifying the current string
907 * Feature 9705: Add real path sanity checks to provided file paths
908 * Feature 9723: Documentation for config management API
909 * Feature 9768: Update the url parsers behaviour
910 * Feature 9777: Make Comments and Downtime types available as ConfigObject type in the API
911 * Feature 9794: Setting global variables with i2tcl doesn't work
912 * Feature 9849: Validation for modified attributes
913 * Feature 9850: Re-implement events for attribute changes
914 * Feature 9851: Remove GetModifiedAttributes/SetModifiedAttributes
915 * Feature 9852: Implement support for . in modify_attribute
916 * Feature 9859: Implement global modified attributes
917 * Feature 9866: Implement support for attaching GDB to the Icinga process on crash
918 * Feature 9914: Rename DynamicObject/DynamicType to ConfigObject/ConfigType
919 * Feature 9919: Allow comments when parsing JSON
920 * Feature 9921: Implement the 'base' field for the Type class
921 * Feature 9926: Ensure that runtime config objects are persisted on disk
922 * Feature 9927: Figure out how to sync dynamically created objects inside the cluster
923 * Feature 9929: Add override keyword for all relevant methods
924 * Feature 9930: Document Object#clone
925 * Feature 9931: Implement Object#clone and rename Array/Dictionary#clone to shallow_clone
926 * Feature 9933: Implement support for indexers in ConfigObject::RestoreAttribute
927 * Feature 9935: Implement support for restoring modified attributes
928 * Feature 9937: Add package attribute for ConfigObject and set its origin
929 * Feature 9940: Implement support for filter_vars
930 * Feature 9944: Add String::ToLower/ToUpper
931 * Feature 9946: Remove debug messages in HttpRequest class
932 * Feature 9953: Rename config/modules to config/packages
933 * Feature 9960: Implement ignore_on_error keyword
934 * Feature 10017: Use an AST node for the 'library' keyword
935 * Feature 10038: Add plural_name field to /v1/types
936 * Feature 10039: URL class improvements
937 * Feature 10042: Implement a demo API client: Icinga Studio
938 * Feature 10060: Implement joins for status queries
939 * Feature 10116: Add global status handler for the API
940 * Feature 10186: Make ConfigObject::{G,S}etField() method public
941 * Feature 10194: Sanitize error status codes and messages
942 * Feature 10202: Add documentation for api-users.conf and app.conf
943 * Feature 10209: Rename statusqueryhandler to objectqueryhandler
944 * Feature 10212: Move /v1/<type> to /v1/objects/<type>
945 * Feature 10243: Provide keywords to retrieve the current file name at parse time
946 * Feature 10257: Change object version to timestamps for diff updates on config sync
947 * Feature 10329: Pretty-print arrays and dictionaries when converting them to strings
948 * Feature 10368: Document that modified attributes require accept_config for cluster/clients
949 * Feature 10374: Add check command nginx_status
950 * Feature 10383: DB IDO should provide its connected state via /v1/status
951 * Feature 10385: Add 'support' tracker to changelog.py
952 * Feature 10387: Use the API for "icinga2 console"
953 * Feature 10388: Log a warning message on unauthorized http request
954 * Feature 10392: Original attributes list in IDO
955 * Feature 10393: Hide internal attributes
956 * Feature 10394: Add getter for endpoint 'connected' attribute
957 * Feature 10407: Remove api.cpp, api.hpp
958 * Feature 10409: Add documentation for apply+for in the language reference chapter
959 * Feature 10423: Ability to set port on SNMP Checks
960 * Feature 10431: Add the name for comments/downtimes next to legacy_id to DB IDO
961 * Feature 10441: Rewrite man page
962 * Feature 10479: Use ZoneName variable for parent_zone in node update-config
963 * Feature 10482: Documentation: Reorganize Livestatus and alternative frontends
964 * Feature 10503: Missing parameters for check jmx4perl
965 * Feature 10507: Add check command negate
966 * Feature 10509: Change GetLastStateUp/Down to host attributes
967 * Feature 10511: Add check command mysql
968 * Feature 10513: Add ipv4/ipv6 only to tcp and http CheckCommand
969 * Feature 10522: Change output format for 'icinga2 console'
970 * Feature 10547: Icinga 2 script debugger
971 * Feature 10548: Implement CSRF protection for the API
972 * Feature 10549: Change 'api setup' into a manual step while configuring the API
973 * Feature 10551: Change object query result set
974 * Feature 10566: Enhance programmatic examples for the API docs
975 * Feature 10574: Mention wxWidget (optional) requirement in INSTALL.md
976 * Feature 10575: Documentation for /v1/console
977 * Feature 10576: Explain variable names for joined objects in filter expressions
978 * Feature 10577: Documentation for the script debugger
979 * Feature 10591: Explain DELETE for config stages/packages
980 * Feature 10630: Update wxWidgets documentation for Icinga Studio
981
982 #### Bugfixes
983
984 * Bug 8822: Update OpenSSL for the Windows builds
985 * Bug 8823: Don't allow users to instantiate the StreamLogger class
986 * Bug 8830: Make default notifications include users from host.vars.notification.mail.users
987 * Bug 8865: Failed assertion in IdoMysqlConnection::FieldToEscapedString
988 * Bug 8907: Validation fails even though field is not required
989 * Bug 8924: Specify pidfile for status_of_proc in the init script
990 * Bug 8952: Crash in VMOps::FunctionCall
991 * Bug 8989: pgsql driver does not have latest mysql changes synced
992 * Bug 9015: Compiler warnings with latest HEAD 5ac5f98
993 * Bug 9027: PostgreSQL schema sets default timestamps w/o time zone
994 * Bug 9053: icinga demo module can not be built
995 * Bug 9188: Remove incorrect 'ignore where' expression from 'ssh' apply example
996 * Bug 9455: Fix incorrect datatype for the check_source column in icinga_statehistory table
997 * Bug 9547: Wrong vars changed handler in api events
998 * Bug 9576: Overflow in freshness_threshold column (smallint) w/ DB IDO MySQL
999 * Bug 9590: 'node wizard/setup' should always generate new CN certificates
1000 * Bug 9703: Problem with child nodes in http url registry
1001 * Bug 9735: Broken cluster config sync w/o include_zones
1002 * Bug 9778: Accessing field ID 0 ("prototype") fails
1003 * Bug 9793: Operator - should not work with "" and numbers
1004 * Bug 9795: ScriptFrame's 'Self' attribute gets corrupted when an expression throws an exception
1005 * Bug 9813: win32 build: S_ISDIR is undefined
1006 * Bug 9843: console autocompletion should take into account parent classes' prototypes
1007 * Bug 9868: Crash in ScriptFrame::~ScriptFrame
1008 * Bug 9872: Color codes in console prompt break line editing
1009 * Bug 9876: Crash during cluster log replay
1010 * Bug 9879: Missing conf.d or zones.d cause parse failure
1011 * Bug 9911: Do not let API users create objects with invalid names
1012 * Bug 9966: Fix formatting in mkclass
1013 * Bug 9968: Implement support for '.' when persisting modified attributes
1014 * Bug 9987: Crash in ConfigCompiler::RegisterZoneDir
1015 * Bug 10008: Don't parse config files for branches not taken
1016 * Bug 10012: Unused variable 'dobj' in configobject.tcpp
1017 * Bug 10024: HTTP keep-alive does not work with .NET WebClient
1018 * Bug 10027: Filtering by name doesn't work
1019 * Bug 10034: Unused variable console_type in consolecommand.cpp
1020 * Bug 10041: build failure: demo module
1021 * Bug 10048: Error handling in HttpClient/icinga-studio
1022 * Bug 10110: Add object_id where clause for icinga_downtimehistory
1023 * Bug 10180: API actions do not follow REST guidelines
1024 * Bug 10198: Detect infinite recursion in user scripts
1025 * Bug 10210: Move the Collection status handler to /v1/status
1026 * Bug 10211: PerfdataValue is not properly serialised in status queries
1027 * Bug 10224: URL parser is cutting off last character
1028 * Bug 10234: ASCII NULs don't work in string values
1029 * Bug 10238: Use a temporary file for modified-attributes.conf updates
1030 * Bug 10241: Properly encode URLs in Icinga Studio
1031 * Bug 10249: Config Sync shouldn't send updates for objects the client doesn't have access to
1032 * Bug 10253: /v1/objects/<type> returns an HTTP error when there are no objects of that type
1033 * Bug 10255: Config sync does not set endpoint syncing and plays disconnect-sync ping-pong
1034 * Bug 10256: ConfigWriter::EmitValue should format floating point values properly
1035 * Bug 10326: icinga2 repository host add does not work
1036 * Bug 10350: Remove duplicated text in section "Apply Notifications to Hosts and Services"
1037 * Bug 10355: Version updates are not working properly
1038 * Bug 10360: Icinga2 API performance regression
1039 * Bug 10371: Ensure that modified attributes work with clients with local config and no zone attribute
1040 * Bug 10386: restore_attribute does not work in clusters
1041 * Bug 10403: Escaping $ not documented
1042 * Bug 10406: Misleading wording in generated zones.conf
1043 * Bug 10410: OpenBSD: hang during ConfigItem::ActivateItems() in daemon startup
1044 * Bug 10417: 'which' isn't available in a minimal CentOS container
1045 * Bug 10422: Changing a group's attributes causes duplicate rows in the icinga_*group_members table
1046 * Bug 10433: 'dig_lookup' custom attribute for the 'dig' check command isn't optional
1047 * Bug 10436: Custom variables aren't removed from the IDO database
1048 * Bug 10439: "Command options" is empty when executing icinga2 without any argument.
1049 * Bug 10440: Improve --help output for the --log-level option
1050 * Bug 10455: Improve error handling during log replay
1051 * Bug 10456: Incorrect attribute name in the documentation
1052 * Bug 10457: Don't allow scripts to access FANoUserView attributes in sandbox mode
1053 * Bug 10461: Line continuation is broken in 'icinga2 console'
1054 * Bug 10466: Crash in IndexerExpression::GetReference when attempting to set an attribute on an object other than the current one
1055 * Bug 10473: IDO tries to execute empty UPDATE queries
1056 * Bug 10491: Unique constraint violation with multiple comment inserts in DB IDO
1057 * Bug 10495: Incorrect JSON-RPC message causes Icinga 2 to crash
1058 * Bug 10498: IcingaStudio: Accessing non-ConfigObjects causes ugly exception
1059 * Bug 10501: Plural name rule not treating edge case correcly
1060 * Bug 10504: Increase the default timeout for OS checks
1061 * Bug 10508: Figure out whether we need the Checkable attributes state_raw, last_state_raw, hard_state_raw
1062 * Bug 10510: CreatePipeOverlapped is not thread-safe
1063 * Bug 10512: Mismatch on {comment,downtime}_id vs internal name in the API
1064 * Bug 10517: Circular reference between *Connection and TlsStream objects
1065 * Bug 10518: Crash in ConfigWriter::GetKeywords
1066 * Bug 10527: Fix indentation for Dictionary::ToString
1067 * Bug 10529: Change session_token to integer timestamp
1068 * Bug 10535: Spaces do not work in command arguments
1069 * Bug 10538: Crash in ConfigWriter::EmitIdentifier
1070 * Bug 10539: Don't validate custom attributes that aren't strings
1071 * Bug 10540: Async mysql queries aren't logged in the debug log
1072 * Bug 10545: Broken build - unresolved external symbol "public: void __thiscall icinga::ApiClient::ExecuteScript...
1073 * Bug 10555: Don't try to use --gc-sections on Solaris
1074 * Bug 10556: Update OpenSSL for the Windows builds
1075 * Bug 10558: There's a variable called 'string' in filter expressions
1076 * Bug 10559: Autocompletion doesn't work in the debugger
1077 * Bug 10560: 'api setup' should create a user even when api feature is already enabled
1078 * Bug 10561: 'remove-comment' action does not support filters
1079 * Bug 10562: Documentation should not reference real host names
1080 * Bug 10563: /v1/console should only use a single permission
1081 * Bug 10568: Improve location information for errors in API filters
1082 * Bug 10569: Icinga 2 API Docs
1083 * Bug 10578: API call doesn't fail when trying to use a template that doesn't exist
1084 * Bug 10580: Detailed error message is missing when object creation via API fails
1085 * Bug 10583: modify_attribute: object cannot be cloned
1086 * Bug 10588: Documentation for /v1/types
1087 * Bug 10596: Deadlock in MacroProcessor::EvaluateFunction
1088 * Bug 10601: Don't allow users to set state attributes via PUT
1089 * Bug 10602: API overwrites (and then deletes) config file when trying to create an object that already exists
1090 * Bug 10604: Group memberships are not updated for runtime created objects
1091 * Bug 10629: Download URL for NSClient++ is incorrect
1092 * Bug 10637: Utility::FormatErrorNumber fails when error message uses arguments
1093
1094 ### What's New in Version 2.3.11
1095
1096 #### Changes
1097
1098 * Function for performing CIDR matches: cidr_match()
1099 * New methods: String#reverse and Array#reverse
1100 * New ITL command definitions: nwc_health, hpasm, squid, pgsql
1101 * Additional arguments for ITL command definitions: by_ssh, dig, pop, spop, imap, simap
1102 * Documentation updates
1103 * Various bugfixes
1104
1105 #### Features
1106
1107 * Feature 9183: Add timestamp support for OpenTsdbWriter
1108 * Feature 9466: Add FreeBSD setup to getting started
1109 * Feature 9812: add check command for check_nwc_health
1110 * Feature 9854: check_command for plugin check_hpasm
1111 * Feature 10004: escape_shell_arg() method
1112 * Feature 10006: Implement a way for users to resolve commands+arguments in the same way Icinga does
1113 * Feature 10057: Command Execution Bridge: Use of same endpoint names in examples for a better understanding
1114 * Feature 10109: Add check command squid
1115 * Feature 10112: Add check command pgsql
1116 * Feature 10129: Add ipv4/ipv6 only to nrpe CheckCommand
1117 * Feature 10139: expand check command dig
1118 * Feature 10142: Update debug docs for core dumps and full backtraces
1119 * Feature 10157: Update graphing section in the docs
1120 * Feature 10158: Make check_disk.exe CheckCommand Config more verbose
1121 * Feature 10161: Improve documentation for check_memory
1122 * Feature 10197: Implement the Array#reverse and String#reverse methods
1123 * Feature 10207: Find a better description for cluster communication requirements
1124 * Feature 10216: Clarify on cluster/client naming convention and add troubleshooting section
1125 * Feature 10219: Add timeout argument for pop, spop, imap, simap commands
1126 * Feature 10352: Improve timeperiod documentation
1127 * Feature 10354: New method: cidr_match()
1128 * Feature 10379: Add a debug log message for updating the program status table in DB IDO
1129
1130 #### Bugfixes
1131
1132 * Bug 8805: check cluster-zone returns wrong log lag
1133 * Bug 9322: sending multiple Livestatus commands rejects all except the first
1134 * Bug 10002: Deadlock in WorkQueue::Enqueue
1135 * Bug 10079: Improve error message for socket errors in Livestatus
1136 * Bug 10093: Rather use unique SID when granting rights for folders in NSIS on Windows Client
1137 * Bug 10177: Windows Check Update -> Access denied
1138 * Bug 10191: String methods cannot be invoked on an empty string
1139 * Bug 10192: null + null should not be ""
1140 * Bug 10199: Remove unnecessary MakeLiteral calls in SetExpression::DoEvaluate
1141 * Bug 10204: Config parser problem with parenthesis and newlines
1142 * Bug 10205: config checker reports wrong error on apply for rules
1143 * Bug 10235: Deadlock in TlsStream::Close
1144 * Bug 10239: Don't throw an exception when replaying the current replay log file
1145 * Bug 10245: Percent character whitespace on Windows
1146 * Bug 10254: Performance Data Labels including '=' will not be displayed correct
1147 * Bug 10262: Don't log messages we've already relayed to all relevant zones
1148 * Bug 10266: "Not after" value overflows in X509 certificates on RHEL5
1149 * Bug 10348: Checkresultreader is unable to process host checks
1150 * Bug 10349: Missing Start call for base class in CheckResultReader
1151 * Bug 10351: Broken table layout in chapter 20
1152 * Bug 10365: ApiListener::SyncRelayMessage doesn't send message to all zone members
1153 * Bug 10377: Wrong connection log message for global zones
1154
1155 ### What's New in Version 2.3.10
1156
1157 #### Features
1158
1159 * Feature 9218: Use the command_endpoint name as check_source value if defined
1160
1161 #### Bugfixes
1162
1163 * Bug 9244: String escape problem with PostgreSQL >= 9.1 and standard_conforming_strings=on
1164 * Bug 10003: Nested "outer" macro calls fails on (handled) missing "inner" values
1165 * Bug 10051: Missing fix for reload on Windows in 2.3.9
1166 * Bug 10058: Wrong calculation for host compat state "UNREACHABLE" in DB IDO
1167 * Bug 10074: Missing zero padding for generated CA serial.txt
1168
1169 ### What's New in Version 2.3.9
1170
1171 #### Changes
1172
1173 * Fix that the first SOFT state is recognized as second SOFT state
1174 * Implemented reload functionality for Windows
1175 * New ITL check commands
1176 * Documentation updates
1177 * Various other bugfixes
1178
1179 #### Features
1180
1181 * Feature 9527: CheckCommand for check_interfaces
1182 * Feature 9671: Add check_yum to ITL
1183 * Feature 9675: Add check_redis to ITL
1184 * Feature 9686: Update gdb pretty printer docs w/ Python 3
1185 * Feature 9699: Adding "-r" parameter to the check_load command for dividing the load averages by the number of CPUs.
1186 * Feature 9747: check_command for plugin check_clamd
1187 * Feature 9796: Implement Dictionary#get and Array#get
1188 * Feature 9801: Add check_jmx4perl to ITL
1189 * Feature 9811: add check command for check_mailq
1190 * Feature 9827: snmpv3 CheckCommand section improved
1191 * Feature 9882: Implement the Dictionary#keys method
1192 * Feature 9883: Use an empty dictionary for the 'this' scope when executing commands with Livestatus
1193 * Feature 9985: add check command nscp-local-counter
1194 * Feature 9996: Add new arguments openvmtools for Open VM Tools
1195
1196 #### Bugfixes
1197
1198 * Bug 8979: Missing DEL_DOWNTIME_BY_HOST_NAME command required by Classic UI 1.x
1199 * Bug 9262: cluster check w/ immediate parent and child zone endpoints
1200 * Bug 9623: missing config warning on empty port in endpoints
1201 * Bug 9769: Set correct X509 version for certificates
1202 * Bug 9773: Add log for missing EventCommand for command_endpoints
1203 * Bug 9779: Trying to set a field for a non-object instance fails
1204 * Bug 9782: icinga2 node wizard don't take zone_name input
1205 * Bug 9806: Operator + is inconsistent when used with empty and non-empty strings
1206 * Bug 9814: Build fix for Boost 1.59
1207 * Bug 9835: Dict initializer incorrectly re-initializes field that is set to an empty string
1208 * Bug 9860: missing check_perfmon.exe
1209 * Bug 9867: Agent freezes when the check returns massive output
1210 * Bug 9884: Warning about invalid API function icinga::Hello
1211 * Bug 9897: First SOFT state is recognized as second SOFT state
1212 * Bug 9902: typo in docs
1213 * Bug 9912: check_command interfaces option match_aliases has to be boolean
1214 * Bug 9913: Default disk checks on Windows fail because check_disk doesn't support -K
1215 * Bug 9928: Add missing category for IDO query
1216 * Bug 9947: Serial number field is not properly initialized for CA certificates
1217 * Bug 9961: Don't re-download NSCP for every build
1218 * Bug 9962: Utility::Glob on Windows doesn't support wildcards in all but the last path component
1219 * Bug 9972: Icinga2 - too many open files - Exception
1220 * Bug 9984: fix check command nscp-local
1221 * Bug 9992: Duplicate severity type in the documentation for SyslogLogger
1222
1223 ### What's New in Version 2.3.8
1224
1225 #### Changes
1226
1227 * Bugfixes
1228
1229 #### Bugfixes
1230
1231 * Bug 9554: Don't allow "ignore where" for groups when there's no "assign where"
1232 * Bug 9634: DB IDO: Do not update endpointstatus table on config updates
1233 * Bug 9637: Wrong parameter for CheckCommand "ping-common-windows"
1234 * Bug 9665: Escaping does not work for OpenTSDB perfdata plugin
1235 * Bug 9666: checkcommand disk does not check free inode - check_disk
1236
1237 ### What's New in Version 2.3.7
1238
1239 #### Changes
1240
1241 * Bugfixes
1242
1243 #### Features
1244
1245 * Feature 9610: Enhance troubleshooting ssl errors & cluster replay log
1246
1247 #### Bugfixes
1248
1249 * Bug 9406: Selective cluster reconnecting breaks client communication
1250 * Bug 9535: Config parser ignores "ignore" in template definition
1251 * Bug 9584: Incorrect return value for the macro() function
1252 * Bug 9585: Wrong formatting in DB IDO extensions docs
1253 * Bug 9586: DB IDO: endpoint* tables are cleared on reload causing constraint violations
1254 * Bug 9621: Assertion failed in icinga::ScriptUtils::Intersection
1255 * Bug 9622: Missing lock in ScriptUtils::Union
1256
1257 ### What's New in Version 2.3.6
1258
1259 #### Changes
1260
1261 * Require openssl1 on sles11sp3 from Security Module repository
1262   * Bug in SLES 11's OpenSSL version 0.9.8j preventing verification of generated certificates.
1263   * Re-create these certificates with 2.3.6 linking against openssl1 (cli command or CSR auto-signing).
1264 * ITL: Add ldap, ntp_peer, mongodb and elasticsearch CheckCommand definitions
1265 * Bugfixes
1266
1267 #### Features
1268
1269 * Feature 6714: add pagerduty notification documentation
1270 * Feature 9172: Add "ldap" CheckCommand for "check_ldap" plugin
1271 * Feature 9191: Add "mongodb" CheckCommand definition
1272 * Feature 9415: Add elasticsearch checkcommand to itl
1273 * Feature 9416: snmpv3 CheckCommand: Add possibility to set securityLevel
1274 * Feature 9451: Merge documentation fixes from GitHub
1275 * Feature 9523: Add ntp_peer CheckCommand
1276 * Feature 9562: Add new options for ntp_time CheckCommand
1277 * Feature 9578: new options for smtp CheckCommand
1278
1279 #### Bugfixes
1280
1281 * Bug 9205: port empty when using icinga2 node wizard
1282 * Bug 9253: Incorrect variable name in the ITL
1283 * Bug 9303: Missing 'snmp_is_cisco' in Manubulon snmp-memory command definition
1284 * Bug 9436: Functions can't be specified as command arguments
1285 * Bug 9450: node setup: indent accept_config and accept_commands
1286 * Bug 9452: Wrong file reference in README.md
1287 * Bug 9456: Windows client w/ command_endpoint broken with $nscp_path$ and NscpPath detection
1288 * Bug 9463: Incorrect check_ping.exe parameter in the ITL
1289 * Bug 9476: Documentation for checks in an HA zone is wrong
1290 * Bug 9481: Fix stability issues in the TlsStream/Stream classes
1291 * Bug 9489: Add log message for discarded cluster events (e.g. from unauthenticated clients)
1292 * Bug 9490: Missing openssl verify in cluster troubleshooting docs
1293 * Bug 9513: itl/plugins-contrib.d/*.conf should point to PluginContribDir
1294 * Bug 9522: wrong default port documentated for nrpe
1295 * Bug 9549: Generated certificates cannot be verified w/ openssl 0.9.8j on SLES 11
1296 * Bug 9558: mysql-devel is not available in sles11sp3
1297 * Bug 9563: Update getting started for Debian Jessie
1298
1299 ### What's New in Version 2.3.5
1300
1301 #### Changes
1302
1303 * NSClient++ is now bundled with the Windows setup wizard and can optionally be installed
1304 * Windows Wizard: "include <nscp>" is set by default
1305 * Windows Wizard: Add update mode
1306 * Plugins: Add check_perfmon plugin for Windows
1307 * ITL: Add CheckCommand objects for Windows plugins ("include <windows-plugins>")
1308 * ITL: Add CheckCommand definitions for "mongodb", "iftraffic", "disk_smb"
1309 * ITL: Add arguments to CheckCommands "dns", "ftp", "tcp", "nscp"
1310
1311 #### Features
1312
1313 * Feature 8116: Extend Windows installer with an update mode
1314 * Feature 8180: Add documentation and CheckCommands for the windows plugins
1315 * Feature 8809: Add check_perfmon plugin for Windows
1316 * Feature 9115: Add SHOWALL to NSCP Checkcommand
1317 * Feature 9130: Add 'check_drivesize' as nscp-local check command
1318 * Feature 9145: Add arguments to "dns" CheckCommand
1319 * Feature 9146: Add arguments to "ftp" CheckCommand
1320 * Feature 9147: Add arguments to "tcp" CheckCommand
1321 * Feature 9176: ITL Documentation: Add a link for passing custom attributes as command parameters
1322 * Feature 9180: Include Windows support details in the documentation
1323 * Feature 9185: Add timestamp support for PerfdataWriter
1324 * Feature 9191: Add "mongodb" CheckCommand definition
1325 * Feature 9238: Bundle NSClient++ in Windows Installer
1326 * Feature 9254: Add 'disk_smb' Plugin CheckCommand definition
1327 * Feature 9256: Determine NSClient++ installation path using MsiGetComponentPath
1328 * Feature 9260: Include <nscp> by default on Windows
1329 * Feature 9261: Add the --load-all and --log options for nscp-local
1330 * Feature 9263: Add support for installing NSClient++ in the Icinga 2 Windows wizard
1331 * Feature 9270: Update service apply for documentation
1332 * Feature 9272: Add 'iftraffic' to plugins-contrib check command definitions
1333 * Feature 9285: Best practices: cluster config sync
1334 * Feature 9297: Add examples for function usage in "set_if" and "command" attributes
1335 * Feature 9310: Add typeof in 'assign/ignore where' expression as example
1336 * Feature 9311: Add local variable scope for *Command to documentation (host, service, etc)
1337 * Feature 9313: Use a more simple example for passing command parameters
1338 * Feature 9318: Explain string concatenation in objects by real-world example
1339 * Feature 9363: Update documentation for escape sequences
1340 * Feature 9419: Enhance cluster/client troubleshooting
1341 * Feature 9420: Enhance cluster docs with HA command_endpoints
1342 * Feature 9431: Documentation: Move configuration before advanced topics
1343
1344 #### Bugfixes
1345
1346 * Bug 8853: Syntax Highlighting: host.address vs host.add
1347 * Bug 8888: Icinga2 --version: Error showing Distribution
1348 * Bug 8891: Node wont connect properly to master if host is is not set for Endpoint on new installs
1349 * Bug 9055: Wrong timestamps w/ historical data replay in DB IDO
1350 * Bug 9109: WIN: syslog is not an enable-able feature in windows
1351 * Bug 9116: node update-config reports critical and warning
1352 * Bug 9121: Possible DB deadlock
1353 * Bug 9131: Missing ")" in last Apply Rules example
1354 * Bug 9142: Downtimes are always "fixed"
1355 * Bug 9143: Incorrect type and state filter mapping for User objects in DB IDO
1356 * Bug 9161: 'disk': wrong order of threshold command arguments
1357 * Bug 9187: SPEC: Give group write permissions for perfdata dir
1358 * Bug 9205: port empty when using icinga2 node wizard
1359 * Bug 9222: Missing custom attributes in backends if name is equal to object attribute
1360 * Bug 9253: Incorrect variable name in the ITL
1361 * Bug 9255: --scm-installs fails when the service is already installed
1362 * Bug 9258: Some checks in the default Windows configuration fail
1363 * Bug 9259: Disk and 'icinga' services are missing in the default Windows config
1364 * Bug 9268: Typo in Configuration Best Practice
1365 * Bug 9269: Wrong permission etc on windows
1366 * Bug 9324: Multi line output not correctly handled from compat channels
1367 * Bug 9328: Multiline vars are broken in objects.cache output
1368 * Bug 9372: plugins-contrib.d/databases.conf: wrong argument for mssql_health
1369 * Bug 9389: Documentation: Typo
1370 * Bug 9390: Wrong service table attributes in Livestatus documentation
1371 * Bug 9393: Documentation: Extend Custom Attributes with the boolean type
1372 * Bug 9394: Including <nscp> on Linux fails with unregistered function
1373 * Bug 9399: Documentation: Typo
1374 * Bug 9406: Selective cluster reconnecting breaks client communication
1375 * Bug 9412: Documentation: Update the link to register a new Icinga account
1376
1377 ### What's New in Version 2.3.4
1378
1379 #### Changes
1380
1381 * ITL: Check commands for various databases
1382 * Improve validation messages for time periods
1383 * Update max_check_attempts in generic-{host,service} templates
1384 * Update logrotate configuration
1385 * Bugfixes
1386
1387 #### Features
1388
1389 * Feature 8760: Add database plugins to ITL
1390 * Feature 8803: Agent Wizard: add options for API defaults
1391 * Feature 8893: Improve timeperiod validation error messages
1392 * Feature 8895: Add explanatory note for Icinga2 client documentation
1393
1394 #### Bugfixes
1395
1396 * Bug 8808: logrotate doesn't work on Ubuntu
1397 * Bug 8821: command_endpoint check_results are not replicated to other endpoints in the same zone
1398 * Bug 8879: Reword documentation of check_address
1399 * Bug 8881: Add arguments to the UPS check
1400 * Bug 8889: Fix a minor markdown error
1401 * Bug 8892: Validation errors for time ranges which span the DST transition
1402 * Bug 8894: Default max_check_attempts should be lower for hosts than for services
1403 * Bug 8913: Windows Build: Flex detection
1404 * Bug 8917: Node wizard should only accept 'y', 'n', 'Y' and 'N' as answers for boolean questions
1405 * Bug 8919: Fix complexity class for Dictionary::Get
1406 * Bug 8987: Fix a typo
1407 * Bug 9012: Typo in graphite feature enable documentation
1408 * Bug 9014: Don't update scheduleddowntime table w/ trigger_time column when only adding a downtime
1409 * Bug 9016: Downtimes which have been triggered are not properly recorded in the database
1410 * Bug 9017: scheduled_downtime_depth column is not reset when a downtime ends or when a downtime is being removed
1411 * Bug 9021: Multiple log messages w/ "Attempting to send notifications for notification object"
1412 * Bug 9041: Acknowledging problems w/ expire time does not add the expiry information to the related comment for IDO and compat
1413 * Bug 9045: Vim syntax: Match groups before host/service/user objects
1414 * Bug 9049: check_disk order of command arguments
1415 * Bug 9050: web.conf is not in the RPM package
1416 * Bug 9064: troubleshoot truncates crash reports
1417 * Bug 9069: Documentation: set_if usage with boolean values and functions
1418 * Bug 9073: custom attributes with recursive macro function calls causing sigabrt
1419
1420 ### What's New in Version 2.3.3
1421
1422 #### Changes
1423
1424 * New function: parse_performance_data
1425 * Include more details in --version
1426 * Improve documentation
1427 * Bugfixes
1428
1429 #### Features
1430
1431 * Feature 8685: Show state/type filter names in notice/debug log
1432 * Feature 8686: Update documentation for "apply for" rules
1433 * Feature 8693: New function: parse_performance_data
1434 * Feature 8740: Add "access objects at runtime" examples to advanced section
1435 * Feature 8761: Include more details in --version
1436 * Feature 8816: Add "random" CheckCommand for test and demo purposes
1437 * Feature 8827: Move release info in INSTALL.md into a separate file
1438
1439 #### Bugfixes
1440
1441 * Bug 8660: Update syntax highlighting for 2.3 features
1442 * Bug 8677: Re-order the object types in alphabetical order
1443 * Bug 8724: Missing config validator for command arguments 'set_if'
1444 * Bug 8734: startup.log broken when the DB schema needs an update
1445 * Bug 8736: Don't update custom vars for each status update
1446 * Bug 8748: Don't ignore extraneous arguments for functions
1447 * Bug 8749: Build warnings with CMake 3.1.3
1448 * Bug 8750: Flex version check does not reject unsupported versions
1449 * Bug 8753: Fix a typo in the documentation of ICINGA2_WITH_MYSQL and ICINGA2_WITH_PGSQL
1450 * Bug 8755: Fix VIM syntax highlighting for comments
1451 * Bug 8757: Add missing keywords in the syntax highlighting files
1452 * Bug 8762: Plugin "check_http" is missing in Windows environments
1453 * Bug 8763: Typo in doc library-reference
1454 * Bug 8764: Revamp migration documentation
1455 * Bug 8765: Explain processing logic/order of apply rules with for loops
1456 * Bug 8766: Remove prompt to create a TicketSalt from the wizard
1457 * Bug 8767: Typo and invalid example in the runtime macro documentation
1458 * Bug 8769: Improve error message for invalid field access
1459 * Bug 8770: object Notification + apply Service fails with error "...refers to service which doesn't exist"
1460 * Bug 8771: Correct HA documentation
1461 * Bug 8829: Figure out why command validators are not triggered
1462 * Bug 8834: Return doesn't work inside loops
1463 * Bug 8844: Segmentation fault when executing "icinga2 pki new-cert"
1464 * Bug 8862: wrong 'dns_lookup' custom attribute default in command-plugins.conf
1465 * Bug 8866: Fix incorrect perfdata templates in the documentation
1466 * Bug 8869: Array in command arguments doesn't work
1467
1468 ### What's New in Version 2.3.2
1469
1470 #### Changes
1471
1472 * Bugfixes
1473
1474 #### Bugfixes
1475
1476 * Bug 8721: Log message for cli commands breaks the init script
1477
1478 ### What's New in Version 2.3.1
1479
1480 #### Changes
1481
1482 * Bugfixes
1483
1484 Please note that this version fixes the default thresholds for the disk check which were inadvertently broken in 2.3.0; if you're using percent-based custom thresholds you will need to add the '%' sign to your custom attributes
1485
1486 #### Features
1487
1488 * Feature 8659: Implement String#contains
1489
1490 #### Bugfixes
1491
1492 * Bug 8540: Kill signal sent only to check process, not whole process group
1493 * Bug 8657: Missing program name in 'icinga2 --version'
1494 * Bug 8658: Fix check_disk thresholds: make sure partitions are the last arguments
1495 * Bug 8672: Api heartbeat message response time problem
1496 * Bug 8673: Fix check_disk default thresholds and document the change of unit
1497 * Bug 8679: Config validation fail because of unexpected new-line
1498 * Bug 8680: Update documentation for DB IDO HA Run-Once
1499 * Bug 8683: Make sure that the /var/log/icinga2/crash directory exists
1500 * Bug 8684: Fix formatting for the GDB stacktrace
1501 * Bug 8687: Crash in Dependency::Stop
1502 * Bug 8691: Debian packages do not create /var/log/icinga2/crash
1503
1504 ### What's New in Version 2.3.0
1505
1506 #### Changes
1507
1508 * Improved configuration validation
1509     * Unnecessary escapes are no longer permitted (e.g. \')
1510     * Dashes are no longer permitted in identifier names (as their semantics are ambiguous)
1511     * Unused values are detected (e.g. { "-M" })
1512     * Validation for time ranges has been improved
1513     * Additional validation rules for some object types (Notification and User)
1514 * New language features
1515     * Implement a separate type for boolean values
1516     * Support for user-defined functions
1517     * Support for conditional statements (if/else)
1518     * Support for 'for' and 'while' loops
1519     * Support for local variables using the 'var' keyword
1520     * New operators: % (modulo), ^ (xor), - (unary minus) and + (unary plus)
1521     * Implemented prototype-based methods for most built-in types (e.g. [ 3, 2 ].sort())
1522     * Explicit access to local and global variables using the 'locals' and 'globals' keywords
1523     * Changed the order in which filters are evaluated for apply rules with 'for'
1524     * Make type objects accessible as global variables
1525     * Support for using functions in custom attributes
1526     * Access objects and their runtime attributes in functions (e.g. get_host(NodeName).state)
1527 * ITL improvements
1528     * Additional check commands were added to the ITL
1529     * Additional arguments for existing check commands
1530 * CLI improvements
1531     * Add the 'icinga2 console' CLI command which can be used to test expressions
1532     * Add the 'icinga2 troubleshoot' CLI command for collecting troubleshooting information
1533     * Performance improvements for the 'icinga2 node update-config' CLI command
1534     * Implement argument auto-completion for short options (e.g. daemon -c)
1535     * 'node setup' and 'node wizard' create backups for existing certificate files
1536 * Add ignore_soft_states option for Dependency object configuration
1537 * Fewer threads are used for socket I/O
1538 * Flapping detection for hosts and services is disabled by default
1539 * Added support for OpenTSDB
1540 * New Livestatus tables: hostsbygroup, servicesbygroup, servicesbyhostgroup
1541 * Include GDB backtrace in crash reports
1542 * Various documentation improvements
1543 * Solved a number of issues where cluster instances would not reconnect after intermittent connection problems
1544 * A lot of other, minor changes
1545
1546 * [DB IDO schema upgrade](17-upgrading-icinga-2.md#upgrading-icinga-2) to `1.13.0` required!
1547
1548 #### Features
1549
1550 * Feature 3446: Add troubleshooting collect cli command
1551 * Feature 6109: Don't spawn threads for network connections
1552 * Feature 6570: Disallow side-effect-free r-value expressions in expression lists
1553 * Feature 6697: Plugin Check Commands: add check_vmware_esx
1554 * Feature 6857: Run CheckCommands with C locale (workaround for comma vs dot and plugin api bug)
1555 * Feature 6858: Add some more PNP details
1556 * Feature 6868: Disable flapping detection by default
1557 * Feature 6923: IDO should fill program_end_time on a clean shutdown
1558 * Feature 7136: extended Manubulon SNMP Check Plugin Command
1559 * Feature 7209: ITL: Interfacetable
1560 * Feature 7256: Add OpenTSDB Writer
1561 * Feature 7292: ITL: Check_Mem.pl
1562 * Feature 7294: ITL: ESXi-Hardware
1563 * Feature 7326: Add parent soft states option to Dependency object configuration
1564 * Feature 7361: Livestatus: Add GroupBy tables: hostsbygroup, servicesbygroup, servicesbyhostgroup
1565 * Feature 7545: Please add labels in SNMP checks
1566 * Feature 7564: Access object runtime attributes in custom vars & command arguments
1567 * Feature 7610: Variable from for loop not usable in assign statement
1568 * Feature 7700: Evaluate apply/object rules when the parent objects are created
1569 * Feature 7702: Add an option that hides CLI commands
1570 * Feature 7704: ConfigCompiler::HandleInclude* should return an AST node
1571 * Feature 7706: ConfigCompiler::Compile* should return an AST node
1572 * Feature 7748: Redesign how stack frames work for scripts
1573 * Feature 7767: Rename _DEBUG to I2_DEBUG
1574 * Feature 7774: Implement an AST Expression for T_CONST
1575 * Feature 7778: Missing check_disk output on Windows
1576 * Feature 7784: Implement the DISABLE_HOST_SVC_NOTIFICATIONS and ENABLE_HOST_SVC_NOTIFICATIONS commands
1577 * Feature 7793: Don't build db_ido when both MySQL and PostgreSQL aren't enabled
1578 * Feature 7794: Implement an option to disable building the Livestatus module
1579 * Feature 7795: Implement an option to disable building the Demo component
1580 * Feature 7805: Implement unit tests for the config parser
1581 * Feature 7807: Move the cast functions into libbase
1582 * Feature 7813: Implement the % operator
1583 * Feature 7816: Document operator precedence
1584 * Feature 7822: Make the config parser thread-safe
1585 * Feature 7823: Figure out whether Number + String should implicitly convert the Number argument to a string
1586 * Feature 7824: Implement the "if" and "else" keywords
1587 * Feature 7873: Plugin Check Commands: Add icmp
1588 * Feature 7879: Windows agent is missing the standard plugin check_ping
1589 * Feature 7883: Implement official support for user-defined functions and the "for" keyword
1590 * Feature 7901: Implement socket_path attribute for the IdoMysqlConnection class
1591 * Feature 7910: The lexer shouldn't accept escapes for characters which don't have to be escaped
1592 * Feature 7925: Move the config file for the ido-*sql features into the icinga2-ido-* packages
1593 * Feature 8016: Documentation enhancement for snmp traps and passive checks.
1594 * Feature 8019: Register type objects as global variables
1595 * Feature 8020: Improve output of ToString for type objects
1596 * Feature 8030: Evaluate usage of function()
1597 * Feature 8033: Allow name changed from inside the object
1598 * Feature 8040: Disallow calling strings as functions
1599 * Feature 8043: Implement a boolean sub-type for the Value class
1600 * Feature 8047: ConfigCompiler::HandleInclude should return an inline dictionary
1601 * Feature 8060: Windows plugins should behave like their Linux cousins
1602 * Feature 8065: Implement a way to remove dictionary keys
1603 * Feature 8071: Implement a way to call methods on objects
1604 * Feature 8074: Figure out how variable scopes should work
1605 * Feature 8078: Backport i2tcl's error reporting functionality into "icinga2 console"
1606 * Feature 8096: Document the new language features in 2.3
1607 * Feature 8121: feature enable should use relative symlinks
1608 * Feature 8133: Implement line-continuation for the "console" command
1609 * Feature 8169: Implement additional methods for strings
1610 * Feature 8172: Assignments shouldn't have a "return" value
1611 * Feature 8195: Host/Service runtime macro downtime_depth
1612 * Feature 8226: Make invalid log-severity option output an error instead of a warning
1613 * Feature 8244: Implement keywords to explicitly access globals/locals
1614 * Feature 8259: The check "hostalive" is not working with ipv6
1615 * Feature 8269: Implement the while keyword
1616 * Feature 8277: Add macros $host.check_source$ and $service.check_source$
1617 * Feature 8290: Make operators &&, || behave like in JavaScript
1618 * Feature 8291: Implement validator support for function objects
1619 * Feature 8293: The Zone::global attribute is not documented
1620 * Feature 8316: Extend disk checkcommand
1621 * Feature 8322: Implement Array#join
1622 * Feature 8371: Add path information for objects in object list
1623 * Feature 8374: Add timestamp support for Graphite
1624 * Feature 8386: Add documentation for cli command 'console'
1625 * Feature 8393: Implement support for Json.encode and Json.decode
1626 * Feature 8394: Implement continue/break keywords
1627 * Feature 8399: Backup certificate files in 'node setup'
1628 * Feature 8410: udp check command is missing arguments.
1629 * Feature 8414: Add ITL check command for check_ipmi_sensor
1630 * Feature 8429: add webinject checkcommand
1631 * Feature 8465: Add the ability to use a CA certificate as a way of verifying hosts for CSR autosigning
1632 * Feature 8467: introduce time dependent variable values
1633 * Feature 8498: Snmp CheckCommand misses various options
1634 * Feature 8515: Show slave lag for the cluster-zone check
1635 * Feature 8522: Update Remote Client/Distributed Monitoring Documentation
1636 * Feature 8527: Change Livestatus query log level to 'notice'
1637 * Feature 8548: Add support for else-if
1638 * Feature 8575: Include GDB backtrace in crash reports
1639 * Feature 8599: Remove macro argument for IMPL_TYPE_LOOKUP
1640 * Feature 8600: Add validator for time ranges in ScheduledDowntime objects
1641 * Feature 8610: Support the SNI TLS extension
1642 * Feature 8621: Add check commands for NSClient++
1643 * Feature 8648: Document closures ('use')
1644
1645 #### Bugfixes
1646
1647 * Bug 6171: Remove name and return value for stats functions
1648 * Bug 6959: Scheduled start time will be ignored if the host or service is already in a problem state
1649 * Bug 7311: Invalid macro results in exception
1650 * Bug 7542: Update validators for CustomVarObject
1651 * Bug 7576: validate configured legacy timeperiod ranges
1652 * Bug 7582: Variable expansion is single quoted.
1653 * Bug 7644: Unity build doesn't work with MSVC
1654 * Bug 7647: Avoid rebuilding libbase when the version number changes
1655 * Bug 7731: Reminder notifications not being sent but logged every 5 secs
1656 * Bug 7765: DB IDO: Duplicate entry icinga_{host,service}dependencies
1657 * Bug 7800: Fix the shift/reduce conflicts in the parser
1658 * Bug 7802: Change parameter type for include and include_recursive to T_STRING
1659 * Bug 7808: Unterminated string literals should cause parser to return an error
1660 * Bug 7809: Scoping rules for "for" are broken
1661 * Bug 7810: Return values for functions are broken
1662 * Bug 7811: The __return keyword is broken
1663 * Bug 7812: Validate array subscripts
1664 * Bug 7814: Set expression should check whether LHS is a null pointer
1665 * Bug 7815: - operator doesn't work in expressions
1666 * Bug 7826: Compiler warnings
1667 * Bug 7830: - shouldn't be allowed in identifiers
1668 * Bug 7871: Missing persistent_comment, notify_contact columns for acknowledgement table
1669 * Bug 7894: Fix warnings when using CMake 3.1.0
1670 * Bug 7895: Serialize() fails to serialize objects which don't have a registered type
1671 * Bug 7995: Windows Agent: Missing directory "zones" in setup
1672 * Bug 8018: Value("").IsEmpty() should return true
1673 * Bug 8029: operator precedence for % and > is incorrect
1674 * Bug 8041: len() overflows
1675 * Bug 8061: Confusing error message for import
1676 * Bug 8067: Require at least one user for notification objects (user or as member of user_groups)
1677 * Bug 8076: icinga 2 Config Error needs to be more verbose
1678 * Bug 8081: Location info for strings is incorrect
1679 * Bug 8100: POSTGRES IDO: invalid syntax for integer: "true" while trying to update table icinga_hoststatus
1680 * Bug 8111: User::ValidateFilters isn't being used
1681 * Bug 8117: Agent checks fail when there's already a host with the same name
1682 * Bug 8122: Config file passing validation causes segfault
1683 * Bug 8132: Debug info for indexer is incorrect
1684 * Bug 8136: Icinga crashes when config file name is invalid
1685 * Bug 8164: escaped backslash in string literals
1686 * Bug 8166: parsing include_recursive
1687 * Bug 8173: Segfault on icinga::String::operator= when compiling configuration
1688 * Bug 8175: Compiler warnings
1689 * Bug 8179: Exception on missing config files
1690 * Bug 8184: group assign fails with bad lexical cast when evaluating rules
1691 * Bug 8185: Argument auto-completion doesn't work for short options
1692 * Bug 8211: icinga2 node update should not write config for blacklisted zones/host
1693 * Bug 8230: Lexer term for T_ANGLE_STRING is too aggressive
1694 * Bug 8249: Problems using command_endpoint inside HA zone
1695 * Bug 8257: Report missing command objects on remote agent
1696 * Bug 8260: icinga2 node wizard: Create backups of certificates
1697 * Bug 8289: Livestatus operator =~ is not case-insensitive
1698 * Bug 8294: Running icinga2 command as non privilged user raises error
1699 * Bug 8298: notify flag is ignored in ACKNOWLEDGE_*_PROBLEM commands
1700 * Bug 8300: ApiListener::ReplayLog shouldn't hold mutex lock during call to Socket::Poll
1701 * Bug 8307: PidPath, VarsPath, ObjectsPath and StatePath no longer read from init.conf
1702 * Bug 8309: Crash in ScheduledDowntime::CreateNextDowntime
1703 * Bug 8313: Incorrectly formatted timestamp in .timestamp file
1704 * Bug 8318: Remote Clients: Add manual setup cli commands
1705 * Bug 8323: Apply rule '' for host does not match anywhere!
1706 * Bug 8333: Icinga2 master doesn't change check-status when "accept_commands = true" is not set at client node
1707 * Bug 8372: Stacktrace on Endpoint not belonging to a zone or multiple zones
1708 * Bug 8383: last_hard_state missing in StatusDataWriter
1709 * Bug 8387: StatusDataWriter: Wrong host notification filters (broken fix in #8192)
1710 * Bug 8388: Config sync authoritative file never created
1711 * Bug 8389: Added downtimes must be triggered immediately if checkable is Not-OK
1712 * Bug 8390: Agent writes CR CR LF in synchronized config files
1713 * Bug 8397: Icinga2 config reset after package update (centos6.6)
1714 * Bug 8425: DB IDO: Duplicate entry icinga_scheduleddowntime
1715 * Bug 8433: Make the arguments for the stats functions const-ref
1716 * Bug 8434: Build fails on OpenBSD
1717 * Bug 8436: Indicate that Icinga2 is shutting down in case of a fatal error
1718 * Bug 8438: DB IDO {host,service}checks command_line value is "Object of type 'icinga::Array'"
1719 * Bug 8444: Don't attempt to restore program state from non-existing state file
1720 * Bug 8452: Livestatus query on commands table with custom vars fails
1721 * Bug 8461: Don't request heartbeat messages until after we've synced the log
1722 * Bug 8473: Exception in WorkQueue::StatusTimerHandler
1723 * Bug 8488: Figure out why 'node update-config' becomes slow over time
1724 * Bug 8493: Misleading ApiListener connection log messages on a master (Endpoint vs Zone)
1725 * Bug 8496: Icinga doesn't update long_output in DB
1726 * Bug 8511: Deadlock with DB IDO dump and forcing a scheduled check
1727 * Bug 8517: Config parser fails non-deterministic on Notification missing Checkable
1728 * Bug 8519: apply-for incorrectly converts loop var to string
1729 * Bug 8529: livestatus limit header not working
1730 * Bug 8535: Crash in ApiEvents::RepositoryTimerHandler
1731 * Bug 8536: Valgrind warning for ExternalCommandListener::CommandPipeThread
1732 * Bug 8537: Crash in DbObject::SendStatusUpdate
1733 * Bug 8544: Hosts: process_performance_data = 0 in database even though enable_perfdata = 1 in config
1734 * Bug 8555: Don't accept config updates for zones for which we have an authoritative copy of the config
1735 * Bug 8559: check_memory tool shows incorrect memory size on windows
1736 * Bug 8593: Memory leak in Expression::GetReference
1737 * Bug 8594: Improve Livestatus query performance
1738 * Bug 8596: Dependency: Validate *_{host,service}_name objects on their existance
1739 * Bug 8604: Attribute hints don't work for nested attributes
1740 * Bug 8627: Icinga2 shuts down when service is reloaded
1741 * Bug 8638: Fix a typo in documentation
1742
1743 ### What's New in Version 2.2.4
1744
1745 #### Changes
1746
1747 * Bugfixes
1748
1749 #### Bugfixes
1750
1751 * Bug #6943: Configured recurring downtimes not applied on saturdays
1752 * Bug #7660: livestatus / nsca / etc submits are ignored during reload
1753 * Bug #7685: kUn-Bashify mail-{host,service}-notification.sh
1754 * Bug #8128: Icinga 2.2.2 build fails on SLES11SP3 because of changed boost dependency
1755 * Bug #8131: vfork() hangs on OS X
1756 * Bug #8162: Satellite doesn't use manually supplied 'local zone name'
1757 * Bug #8192: Feature statusdata shows wrong host notification options
1758 * Bug #8201: Update Icinga Web 2 uri to /icingaweb2
1759 * Bug #8214: Fix YAJL detection on Debian squeeze
1760 * Bug #8222: inconsistent URL http(s)://www.icinga.com
1761 * Bug #8223: Typos in readme file for windows plugins
1762 * Bug #8245: check_ssmtp command does NOT support mail_from
1763 * Bug #8256: Restart fails after deleting a Host
1764 * Bug #8288: Crash in DbConnection::ProgramStatusHandler
1765 * Bug #8295: Restart of Icinga hangs
1766 * Bug #8299: Scheduling downtime for host and all services only schedules services
1767 * Bug #8311: Segfault in Checkable::AddNotification
1768 * Bug #8321: enable_event_handlers attribute is missing in status.dat
1769 * Bug #8368: Output in "node wizard" is confusing
1770
1771 ### What's New in Version 2.2.3
1772
1773 #### Changes
1774
1775 * Bugfixes
1776
1777 #### Bugfixes
1778
1779 * Bug #8063: Volatile checks trigger invalid notifications on OK->OK state changes
1780 * Bug #8125: Incorrect ticket shouldn't cause "node wizard" to terminate
1781 * Bug #8126: Icinga 2.2.2 doesn't build on i586 SUSE distributions
1782 * Bug #8143: Windows plugin check_service.exe can't find service NTDS
1783 * Bug #8144: Arguments without values are not used on plugin exec
1784 * Bug #8147: check_interval must be greater than 0 error on update-config
1785 * Bug #8152: DB IDO query queue limit reached on reload
1786 * Bug #8171: Typo in example of StatusDataWriter
1787 * Bug #8178: Icinga 2.2.2 segfaults on FreeBSD
1788 * Bug #8181: icinga2 node update config shows hex instead of human readable names
1789 * Bug #8182: Segfault on update-config old empty config
1790
1791 ### What's New in Version 2.2.2
1792
1793 #### Changes
1794
1795 * Bugfixes
1796
1797 #### Bugfixes
1798
1799 * Bug #7045: icinga2 init-script doesn't validate configuration on reload action
1800 * Bug #7064: Missing host downtimes/comments in Livestatus
1801 * Bug #7301: Docs: Better explaination of dependency state filters
1802 * Bug #7314: double macros in command arguments seems to lead to exception
1803 * Bug #7511: Feature `compatlog' should flush output buffer on every new line
1804 * Bug #7518: update-config fails to create hosts
1805 * Bug #7591: CPU usage at 100% when check_interval = 0 in host object definition
1806 * Bug #7618: Repository does not support services which have a slash in their name
1807 * Bug #7683: If a parent host goes down, the child host isn't marked as unrechable in the db ido
1808 * Bug #7707: "node wizard" shouldn't crash when SaveCert fails
1809 * Bug #7745: Cluster heartbeats need to be more aggressive
1810 * Bug #7769: The unit tests still crash sometimes
1811 * Bug #7863: execute checks locally if command_endpoint == local endpoint
1812 * Bug #7878: Segfault on issuing node update-config
1813 * Bug #7882: Improve error reporting when libmysqlclient or libpq are missing
1814 * Bug #7891: CLI `icinga2 node update-config` doesn't sync configs from remote clients as expected
1815 * Bug #7913: /usr/lib/icinga2 is not owned by a package
1816 * Bug #7914: SUSE packages %set_permissions post statement wasn't moved to common
1817 * Bug #7917: update_config not updating configuration
1818 * Bug #7920: Test Classic UI config file with Apache 2.4
1819 * Bug #7929: Apache 2.2 fails with new apache conf
1820 * Bug #8002: typeof() seems to return null for arrays and dictionaries
1821 * Bug #8003: SIGABRT while evaluating apply rules
1822 * Bug #8028: typeof does not work for numbers
1823 * Bug #8039: Livestatus: Replace unixcat with nc -U
1824 * Bug #8048: Wrong command in documentation for installing Icinga 2 pretty printers.
1825 * Bug #8050: exception during config check
1826 * Bug #8051: Update host examples in Dependencies for Network Reachability documentation
1827 * Bug #8058: DB IDO: Missing last_hard_state column update in {host,service}status tables
1828 * Bug #8059: Unit tests fail on FreeBSD
1829 * Bug #8066: Setting a dictionary key to null does not cause the key/value to be removed
1830 * Bug #8070: Documentation: Add note on default notification interval in getting started notifications.conf
1831 * Bug #8075: No option to specify timeout to check_snmp and snmp manubulon commands
1832
1833 ### What's New in Version 2.2.1
1834
1835 #### Changes
1836
1837 * Support arrays in [command argument macros](#command-passing-parameters) #6709
1838     * Allows to define multiple parameters for [nrpe -a](#plugin-check-command-nrpe), [nscp -l](#plugin-check-command-nscp), [disk -p](#plugin-check-command-disk), [dns -a](#plugin-check-command-dns).
1839 * Bugfixes
1840
1841 #### Features
1842
1843 * Feature #6709: Support for arrays in macros
1844 * Feature #7463: Update spec file to use yajl-devel
1845 * Feature #7739: The classicui Apache conf doesn't support Apache 2.4
1846 * Feature #7747: Increase default timeout for NRPE checks
1847 * Feature #7867: Document how arrays in macros work
1848
1849 #### Bugfixes
1850
1851 * Bug #7173: service icinga2 status gives wrong information when run as unprivileged user
1852 * Bug #7602: livestatus large amount of submitting unix socket command results in broken pipes
1853 * Bug #7613: icinga2 checkconfig should fail if group given for command files does not exist
1854 * Bug #7671: object and template with the same name generate duplicate object error
1855 * Bug #7708: Built-in commands shouldn't be run on the master instance in remote command execution mode
1856 * Bug #7725: Windows wizard uses incorrect CLI command
1857 * Bug #7726: Windows wizard is missing --zone argument
1858 * Bug #7730: Restart Icinga - Error Restoring program state from file '/var/lib/icinga2/icinga2.state'
1859 * Bug #7735: 2.2.0 has out-of-date icinga2 man page
1860 * Bug #7738: Systemd rpm scripts are run in wrong package
1861 * Bug #7740: /usr/sbin/icinga-prepare-dirs conflicts in the bin and common package
1862 * Bug #7741: Icinga 2.2 misses the build requirement libyajl-devel for SUSE distributions
1863 * Bug #7743: Icinga2 node add failed with unhandled exception
1864 * Bug #7754: Incorrect error message for localhost
1865 * Bug #7770: Objects created with node update-config can't be seen in Classic UI
1866 * Bug #7786: Move the icinga2-prepare-dirs script elsewhere
1867 * Bug #7806: !in operator returns incorrect result
1868 * Bug #7828: Verify if master radio box is disabled in the Windows wizard
1869 * Bug #7847: Wrong information in section "Linux Client Setup Wizard for Remote Monitoring"
1870 * Bug #7862: Segfault in CA handling
1871 * Bug #7868: Documentation: Explain how unresolved macros are handled
1872 * Bug #7890: Wrong permission in run directory after restart
1873 * Bug #7896: Fix Apache config in the Debian package
1874
1875 ### What's New in Version 2.2.0
1876
1877 #### Changes
1878
1879 * DB IDO schema update to version `1.12.0`
1880     * schema files in `lib/db_ido_{mysql,pgsql}/schema` (source)
1881     * Table `programstatus`: New column `program_version`
1882     * Table `customvariables` and `customvariablestatus`: New column `is_json` (required for custom attribute array/dictionary support)
1883 * New features
1884     * [GelfWriter](#gelfwriter): Logging check results, state changes, notifications to GELF (graylog2, logstash) #7619
1885     * Agent/Client/Node framework #7249
1886     * Windows plugins for the client/agent parts #7242 #7243
1887 * New CLI commands #7245
1888     * `icinga2 feature {enable,disable}` replaces `icinga2-{enable,disable}-feature` script  #7250
1889     * `icinga2 object list` replaces `icinga2-list-objects` script  #7251
1890     * `icinga2 pki` replaces` icinga2-build-{ca,key}` scripts  #7247
1891     * `icinga2 repository` manages `/etc/icinga2/repository.d` which must be included in `icinga2.conf` #7255
1892     * `icinga2 node` cli command provides node (master, satellite, agent) setup (wizard) and management functionality #7248
1893     * `icinga2 daemon` for existing daemon arguments (`-c`, `-C`). Removed `-u` and `-g` parameters in favor of [init.conf](#init-conf).
1894     * bash auto-completion & terminal colors #7396
1895 * Configuration
1896     * Former `localhost` example host is now defined in [hosts.conf](#hosts-conf) #7594
1897     * All example services moved into advanced apply rules in [services.conf](#services-conf)
1898     * Updated downtimes configuration example in [downtimes.conf](#downtimes-conf) #7472
1899     * Updated notification apply example in [notifications.conf](#notifications-conf) #7594
1900     * Support for object attribute 'zone' #7400
1901     * Support setting [object variables in apply rules](#dependencies-apply-custom-attributes) #7479
1902     * Support arrays and dictionaries in [custom attributes](#custom-attributes-apply) #6544 #7560
1903     * Add [apply for rules](#using-apply-for) for advanced dynamic object generation #7561
1904     * New attribute `accept_commands` for [ApiListener](#objecttype-apilistener) #7559
1905     * New [init.conf](#init-conf) file included first containing new constants `RunAsUser` and `RunAsGroup`.
1906 * Cluster
1907     * Add [CSR Auto-Signing support](#csr-autosigning-requirements) using generated ticket #7244
1908     * Allow to [execute remote commands](#icinga2-remote-monitoring-client-command-execution) on endpoint clients #7559
1909 * Perfdata
1910     * [PerfdataWriter](#writing-performance-data-files): Don't change perfdata, pass through from plugins #7268
1911     * [GraphiteWriter](#graphite-carbon-cache-writer): Add warn/crit/min/max perfdata and downtime_depth stats values #7366 #6946
1912 * Packages
1913     * `python-icinga2` package dropped in favor of integrated cli commands #7245
1914     * Windows Installer for the agent parts #7243
1915
1916 > **Note**
1917 >
1918 >  Please remove `conf.d/hosts/localhost*` after verifying your updated configuration!
1919
1920 #### Features
1921
1922 * Feature #6544: Support for array in custom variable.
1923 * Feature #6946: Add downtime depth as statistic metric for GraphiteWriter
1924 * Feature #7187: Document how to use multiple assign/ignore statements with logical "and" & "or"
1925 * Feature #7199: Cli commands: add filter capability to 'object list'
1926 * Feature #7241: Windows Wizard
1927 * Feature #7242: Windows plugins
1928 * Feature #7243: Windows installer
1929 * Feature #7244: CSR auto-signing
1930 * Feature #7245: Cli commands
1931 * Feature #7246: Cli command framework
1932 * Feature #7247: Cli command: pki
1933 * Feature #7248: Cli command: Node
1934 * Feature #7249: Node Repository
1935 * Feature #7250: Cli command: Feature
1936 * Feature #7251: Cli command: Object
1937 * Feature #7252: Cli command: SCM
1938 * Feature #7253: Cli Commands: Node Repository Blacklist & Whitelist
1939 * Feature #7254: Documentation: Agent/Satellite Setup
1940 * Feature #7255: Cli command: Repository
1941 * Feature #7262: macro processor needs an array printer
1942 * Feature #7319: Documentation: Add support for locally-scoped variables for host/service in applied Dependency
1943 * Feature #7334: GraphiteWriter: Add support for customized metric prefix names
1944 * Feature #7356: Documentation: Cli Commands
1945 * Feature #7366: GraphiteWriter: Add warn/crit/min/max perfdata values if existing
1946 * Feature #7370: CLI command: variable
1947 * Feature #7391: Add program_version column to programstatus table
1948 * Feature #7396: Implement generic color support for terminals
1949 * Feature #7400: Remove zone keyword and allow to use object attribute 'zone'
1950 * Feature #7415: CLI: List disabled features in feature list too
1951 * Feature #7421: Add -h next to --help
1952 * Feature #7423: Cli command: Node Setup
1953 * Feature #7452: Replace cJSON with a better JSON parser
1954 * Feature #7465: Cli command: Node Setup Wizard (for Satellites and Agents)
1955 * Feature #7467: Remove virtual agent name feature for localhost
1956 * Feature #7472: Update downtimes.conf example config
1957 * Feature #7478: Documentation: Mention 'icinga2 object list' in config validation
1958 * Feature #7479: Set host/service variable in apply rules
1959 * Feature #7480: Documentation: Add host/services variables in apply rules
1960 * Feature #7504: Documentation: Revamp getting started with 1 host and multiple (service) applies
1961 * Feature #7514: Documentation: Move troubleshooting after the getting started chapter
1962 * Feature #7524: Documentation: Explain how to manage agent config in central repository
1963 * Feature #7543: Documentation for arrays & dictionaries in custom attributes and their usage in apply rules for
1964 * Feature #7559: Execute remote commands on the agent w/o local objects by passing custom attributes
1965 * Feature #7560: Support dictionaries in custom attributes
1966 * Feature #7561: Generate objects using apply with foreach in arrays or dictionaries (key => value)
1967 * Feature #7566: Implement support for arbitrarily complex indexers
1968 * Feature #7594: Revamp sample configuration: add NodeName host, move services into apply rules schema
1969 * Feature #7596: Plugin Check Commands: disk is missing '-p', 'x' parameter
1970 * Feature #7619: Add GelfWriter for writing log events to graylog2/logstash
1971 * Feature #7620: Documentation: Update Icinga Web 2 installation
1972 * Feature #7622: Icinga 2 should use less RAM
1973 * Feature #7680: Conditionally enable MySQL and PostgresSQL, add support for FreeBSD and DragonFlyBSD
1974
1975 #### Bugfixes
1976
1977 * Bug #6547: delaying notifications with times.begin should postpone first notification into that window
1978 * Bug #7257: default value for "disable_notifications" in service dependencies is set to "false"
1979 * Bug #7268: Icinga2 changes perfdata order and removes maximum
1980 * Bug #7272: icinga2 returns exponential perfdata format with check_nt
1981 * Bug #7275: snmp-load checkcommand has wrong threshold syntax
1982 * Bug #7276: SLES (Suse Linux Enterprise Server) 11 SP3 package dependency failure
1983 * Bug #7302: ITL: check_procs and check_http are missing arguments
1984 * Bug #7324: config parser crashes on unknown attribute in assign
1985 * Bug #7327: Icinga2 docs: link supported operators from sections about apply rules
1986 * Bug #7331: Error messages for invalid imports missing
1987 * Bug #7338: Docs: Default command timeout is 60s not 5m
1988 * Bug #7339: Importing a CheckCommand in a NotificationCommand results in an exception without stacktrace.
1989 * Bug #7349: Documentation: Wrong check command for snmp-int(erface)
1990 * Bug #7351: snmp-load checkcommand has a wrong "-T" param value
1991 * Bug #7359: Setting snmp_v2 can cause snmp-manubulon-command derived checks to fail
1992 * Bug #7365: Typo for "HTTP Checks" match in groups.conf
1993 * Bug #7369: Fix reading perfdata in compat/checkresultreader
1994 * Bug #7372: custom attribute name 'type' causes empty vars dictionary
1995 * Bug #7373: Wrong usermod command for external command pipe setup
1996 * Bug #7378: Commands are auto-completed when they shouldn't be
1997 * Bug #7379: failed en/disable feature should return error
1998 * Bug #7380: Debian package root permissions interfere with icinga2 cli commands as icinga user
1999 * Bug #7392: Schema upgrade files are missing in /usr/share/icinga2-ido-{mysql,pgsql}
2000 * Bug #7417: CMake warnings on OS X
2001 * Bug #7428: Documentation: 1-about contribute links to non-existing report a bug howto
2002 * Bug #7433: Unity build fails on RHEL 5
2003 * Bug #7446: When replaying logs the secobj attribute is ignored
2004 * Bug #7473: Performance data via API is broken
2005 * Bug #7475: can't assign Service to Host in nested HostGroup
2006 * Bug #7477: Fix typos and other small corrections in documentation
2007 * Bug #7482: OnStateLoaded isn't called for objects which don't have any state
2008 * Bug #7483: Hosts/services should not have themselves as parents
2009 * Bug #7495: Utility::GetFQDN doesn't work on OS X
2010 * Bug #7503: Icinga2 fails to start due to configuration errors
2011 * Bug #7520: Use ScriptVariable::Get for RunAsUser/RunAsGroup
2012 * Bug #7536: Object list dump erraneously evaluates template definitions
2013 * Bug #7537: Nesting an object in a template causes the template to become non-abstract
2014 * Bug #7538: There is no __name available to nested objects
2015 * Bug #7573: link missing in documentation about livestatus
2016 * Bug #7577: Invalid checkresult object causes Icinga 2 to crash
2017 * Bug #7579: only notify users on recovery which have been notified before (not-ok state)
2018 * Bug #7585: Nested templates do not work (anymore)
2019 * Bug #7586: Exception when executing check
2020 * Bug #7597: Compilation Error with boost 1.56 under Windows
2021 * Bug #7599: Plugin execution on Windows does not work
2022 * Bug #7617: mkclass crashes when called without arguments
2023 * Bug #7623: Missing state filter 'OK' must not prevent recovery notifications being sent
2024 * Bug #7624: Installation on Windows fails
2025 * Bug #7625: IDO module crashes on Windows
2026 * Bug #7646: Get rid of static boost::mutex variables
2027 * Bug #7648: Unit tests fail to run
2028 * Bug #7650: Wrong set of dependency state when a host depends on a service
2029 * Bug #7681: CreateProcess fails on Windows 7
2030 * Bug #7688: DebugInfo is missing for nested dictionaries
2031
2032
2033 ### What's New in Version 2.1.1
2034
2035 #### Features
2036
2037 * Feature #6719: Change log message for checking/sending notifications
2038 * Feature #7028: Document how to use @ to escape keywords
2039 * Feature #7033: Add include guards for mkclass files
2040 * Feature #7034: Ensure that namespaces for INITIALIZE_ONCE and REGISTER_TYPE are truly unique
2041 * Feature #7035: Implement support for unity builds
2042 * Feature #7039: Figure out a better way to set the version for snapshot builds
2043 * Feature #7040: Unity builds: Detect whether __COUNTER__ is available
2044 * Feature #7041: Enable unity build for RPM/Debian packages
2045 * Feature #7070: Explain event commands and their integration by a real life example (httpd restart via ssh)
2046 * Feature #7158: Extend documentation for icinga-web on Debian systems
2047
2048 #### Bugfixes
2049
2050 * Bug #6147: Link libcJSON against libm
2051 * Bug #6696: make test fails on openbsd
2052 * Bug #6841: Too many queued messages
2053 * Bug #6862: SSL_read errors during restart
2054 * Bug #6981: SSL errors with interleaved SSL_read/write
2055 * Bug #7029: icinga2.spec: files-attr-not-set for python-icinga2 package
2056 * Bug #7032: "Error parsing performance data" in spite of "enable_perfdata = false"
2057 * Bug #7036: Remove validator for the Script type
2058 * Bug #7037: icinga2-list-objects doesn't work with Python 3
2059 * Bug #7038: Fix rpmlint errors
2060 * Bug #7042: icinga2-list-objects complains about Umlauts and stops output
2061 * Bug #7044: icinga2 init-script terminates with exit code 0 if $DAEMON is not in place or not executable
2062 * Bug #7047: service icinga2 status - prints cat error if the service is stopped
2063 * Bug #7058: Exit code is not initialized for some failed checks
2064 * Bug #7065: pipe2 returns ENOSYS on GNU Hurd and Debian kfreebsd
2065 * Bug #7072: GraphiteWriter should ignore empty perfdata value
2066 * Bug #7080: Missing differentiation between service and systemctl
2067 * Bug #7096: new SSL Errors with too many queued messages
2068 * Bug #7115: Build fails on Haiku
2069 * Bug #7123: Manubulon-Plugin conf Filename wrong
2070 * Bug #7139: GNUInstallDirs.cmake outdated
2071 * Bug #7167: Segfault using cluster in TlsStream::IsEof
2072 * Bug #7168: fping4 doesn't work correctly with the shipped command-plugins.conf
2073 * Bug #7186: Livestatus hangs from time to time
2074 * Bug #7195: fix memory leak ido_pgsql
2075 * Bug #7210: clarify on db ido upgrades
2076
2077 ### What's New in Version 2.1.0
2078
2079 #### Changes
2080
2081 * DB IDO schema upgrade ([MySQL](#upgrading-mysql-db),[PostgreSQL](#upgrading-postgresql-db) required!
2082     * new schema version: **1.11.7**
2083     * RPMs install the schema files into `/usr/share/icinga2-ido*` instead of `/usr/share/doc/icinga2-ido*` #6881
2084 * [Information for config objects](#list-configuration-objects) using `icinga2-list-objects` script #6702
2085 * Add Python 2.4 as requirement #6702
2086 * Add search path: If `-c /etc/icinga2/icinga2.conf` is omitted, use `SysconfDir + "/icinga2/icinga2.conf"` #6874
2087 * Change log level for failed commands #6751
2088 * Notifications are load-balanced in a [High Availability cluster setup](#high-availability-notifications) #6203
2089     * New config attribute: `enable_ha`
2090 * DB IDO "run once" or "run everywhere" mode in a [High Availability cluster setup](#high-availability-db-ido) #6203 #6827
2091     * New config attributes: `enable_ha` and `failover_timeout`
2092 * RPMs use the `icingacmd` group for /var/{cache,log,run}/icinga2 #6948
2093
2094 #### Features
2095
2096 * Feature #5219: Cluster support for modified attributes
2097 * Feature #6066: Better log messages for cluster changes
2098 * Feature #6203: Better cluster support for notifications / IDO
2099 * Feature #6205: Log replay sends messages to instances which shouldn't get those messages
2100 * Feature #6702: Information for config objects
2101 * Feature #6704: Release 2.1
2102 * Feature #6751: Change log level for failed commands
2103 * Feature #6874: add search path for icinga2.conf
2104 * Feature #6898: Enhance logging for perfdata/graphitewriter
2105 * Feature #6919: Clean up spec file
2106 * Feature #6920: Recommend related packages on SUSE distributions
2107 * API - Bug #6998: ApiListener ignores bind_host attribute
2108 * DB IDO - Feature #6827: delay ido connect in ha cluster
2109 * Documentation - Bug #6870: Wrong object attribute 'enable_flap_detection'
2110 * Documentation - Bug #6878: Wrong parent in Load Distribution
2111 * Documentation - Bug #6909: clarify on which config tools are available
2112 * Documentation - Bug #6968: Update command arguments 'set_if' and beautify error message
2113 * Documentation - Bug #6995: Keyword "required" used inconsistently for host and service "icon_image*" attributes
2114 * Documentation - Feature #6651: Migration: note on check command timeouts
2115 * Documentation - Feature #6703: Documentation for zones and cluster permissions
2116 * Documentation - Feature #6743: Better explanation for HA config cluster
2117 * Documentation - Feature #6839: Explain how the order attribute works in commands
2118 * Documentation - Feature #6864: Add section for reserved keywords
2119 * Documentation - Feature #6867: add section about disabling re-notifications
2120 * Documentation - Feature #6869: Add systemd options: enable, journal
2121 * Documentation - Feature #6922: Enhance Graphite Writer description
2122 * Documentation - Feature #6949: Add documentation for icinga2-list-objects
2123 * Documentation - Feature #6997: how to add a new cluster node
2124 * Documentation - Feature #7018: add example selinux policy for external command pipe
2125 * Plugins - Feature #6650: Plugin Check Commands: add manubulon snmp plugins
2126
2127 #### Bugfixes
2128
2129 * Bug #6881: make install does not install the db-schema
2130 * Bug #6915: use _rundir macro for configuring the run directory
2131 * Bug #6916: External command pipe: Too many open files
2132 * Bug #6917: enforce /usr/lib as base for the cgi path on SUSE distributions
2133 * Bug #6942: ExternalCommandListener fails open pipe: Too many open files
2134 * Bug #6948: check file permissions in /var/cache/icinga2
2135 * Bug #6962: Commands are processed multiple times
2136 * Bug #6964: Host and service checks stuck in "pending" when hostname = localhost a parent/satellite setup
2137 * Bug #7001: Build fails with Boost 1.56
2138 * Bug #7016: 64-bit RPMs are not installable
2139
2140 ### What's New in Version 2.0.2
2141
2142 #### Changes
2143
2144 * DB IDO schema upgrade required (new schema version: 1.11.6)
2145
2146 #### Features
2147
2148 * Feature #5818: SUSE packages
2149 * Feature #6655: Build packages for el7
2150 * Feature #6688: Rename README to README.md
2151 * Feature #6698: Require command to be an array when the arguments attribute is used
2152 * Feature #6700: Release 2.0.2
2153 * Feature #6783: Print application paths for --version
2154 * DB IDO - Bug #6414: objects and their ids are inserted twice
2155 * DB IDO - Bug #6608: Two Custom Variables with same name, but Upper/Lowercase creating IDO duplicate entry
2156 * DB IDO - Bug #6646: NULL vs empty string
2157 * DB IDO - Bug #6850: exit application if ido schema version does not match
2158 * Documentation - Bug #6652: clarify on which features are required for classic ui/web/web2
2159 * Documentation - Bug #6708: update installation with systemd usage
2160 * Documentation - Bug #6711: icinga Web: wrong path to command pipe
2161 * Documentation - Bug #6725: Missing documentation about implicit dependency
2162 * Documentation - Bug #6728: wrong path for the file 'localhost.conf'
2163 * Migration - Bug #6558: group names quoted twice in arrays
2164 * Migration - Bug #6560: Service dependencies aren't getting converted properly
2165 * Migration - Bug #6561: $TOTALHOSTSERVICESWARNING$ and $TOTALHOSTSERVICESCRITICAL$ aren't getting converted
2166 * Migration - Bug #6563: Check and retry intervals are incorrect
2167 * Migration - Bug #6786: Fix notification definition if no host_name / service_description given
2168 * Plugins - Feature #6695: Plugin Check Commands: Add expect option to check_http
2169 * Plugins - Feature #6791: Plugin Check Commands: Add timeout option to check_ssh
2170
2171 #### Bugfixes
2172
2173 * Bug #6450: ipmi-sensors segfault due to stack size
2174 * Bug #6479: Notifications not always triggered
2175 * Bug #6501: Classic UI Debian/Ubuntu: apache 2.4 requires 'a2enmod cgi' & apacheutils installed
2176 * Bug #6548: Add cmake constant for PluginDir
2177 * Bug #6549: GraphiteWriter regularly sends empty lines
2178 * Bug #6550: add log message for invalid performance data
2179 * Bug #6589: Command pipe blocks when trying to open it more than once in parallel
2180 * Bug #6621: Infinite loop in TlsStream::Close
2181 * Bug #6627: Location of the run directory is hard coded and bound to "local_state_dir"
2182 * Bug #6659: RPMLint security warning - missing-call-to-setgroups-before-setuid /usr/sbin/icinga2
2183 * Bug #6682: Missing detailed error messages on ApiListener SSL Errors
2184 * Bug #6686: Event Commands are triggered in OK HARD state everytime
2185 * Bug #6687: Remove superfluous quotes and commas in dictionaries
2186 * Bug #6713: sample config: add check commands location hint (itl/plugin check commands)
2187 * Bug #6718: "order" attribute doesn't seem to work as expected
2188 * Bug #6724: TLS Connections still unstable in 2.0.1
2189 * Bug #6756: GraphiteWriter: Malformatted integer values
2190 * Bug #6765: Config validation without filename argument fails with unhandled exception
2191 * Bug #6768: Repo Error on RHEL 6.5
2192 * Bug #6773: Order doesn't work in check ssh command
2193 * Bug #6782: The "ssl" check command always sets -D
2194 * Bug #6790: Service icinga2 reload command does not cause effect
2195 * Bug #6809: additional group rights missing when Icinga started with -u and -g
2196 * Bug #6810: High Availablity does not synchronise the data like expected
2197 * Bug #6820: Icinga 2 crashes during startup
2198 * Bug #6821: [Patch] Fix build issue and crash found on Solaris, potentially other Unix OSes
2199 * Bug #6825: incorrect sysconfig path on sles11
2200 * Bug #6832: Remove if(NOT DEFINED ICINGA2_SYSCONFIGFILE) in etc/initsystem/CMakeLists.txt
2201 * Bug #6840: Missing space in error message
2202 * Bug #6849: Error handler for getaddrinfo must use gai_strerror
2203 * Bug #6852: Startup logfile is not flushed to disk
2204 * Bug #6856: event command execution does not call finish handler
2205 * Bug #6861: write startup error messages to error.log
2206
2207 ### What's New in Version 2.0.1
2208
2209 #### Features
2210
2211 * Feature #6531: Add port option to check imap/pop/smtp and a new dig
2212 * Feature #6581: Add more options to snmp check
2213 * DB IDO - Bug #5577: PostgreSQL string escaping
2214 * DB IDO - Bug #6577: icinga2-ido-pgsql snapshot package missing dependecy dbconfig-common
2215 * Documentation - Bug #6506: Array section confusing
2216 * Documentation - Bug #6592: Documentation for || and && is missing
2217 * Documentation - Feature #6658: change docs.icinga.com/icinga2/latest to git master
2218 * Livestatus - Bug #6494: Thruk Panorama View cannot query Host Status
2219 * Livestatus - Feature #5312: OutputFormat python
2220 * Migration - Bug #6559: $SERVICEDESC$ isn't getting converted correctly
2221
2222 #### Bugfixes
2223
2224 * Bug #6316: application fails to start on wrong log file permissions but does not tell about it
2225 * Bug #6368: Deadlock in ApiListener::RelayMessage
2226 * Bug #6373: base64 on CentOS 5 fails to read certificate bundles
2227 * Bug #6388: Debian package icinga2-classicui needs versioned dependency of icinga-cgi*
2228 * Bug #6488: build warnings
2229 * Bug #6492: icinga2.state could not be opened
2230 * Bug #6493: Copyright problems
2231 * Bug #6498: icinga2 cannot be built with both systemd and init.d files
2232 * Bug #6510: Reminder notifications are sent on disabled services
2233 * Bug #6526: htpasswd should be installed with icinga2-classicui on Ubuntu
2234 * Bug #6529: parsing of double defined command can generate unexpected errors
2235 * Bug #6537: Icinga doesn't send SetLogPosition messages when one of the endpoints fails to connect
2236 * Bug #6551: Improve systemd service definition
2237 * Bug #6565: Dependencies should cache their parent and child object
2238 * Bug #6574: Check command result doesn't match
2239 * Bug #6576: Remove line number information from stack traces
2240 * Bug #6588: Notifications causing segfault from exim
2241 * Bug #6605: Please add --sni option to http check command
2242 * Bug #6612: Icinga stops updating IDO after a while
2243 * Bug #6617: TLS connections are still unstable
2244 * Bug #6620: icinga2-build-ca shouldn't prompt for DN
2245 * Bug #6622: icinga2-sign-key creates ".crt" and ".key" files when the CA passphrase is invalid
2246 * Bug #6657: ICINGA2_SYSCONFIGFILE should use full path using CMAKE_INSTALL_FULL_SYSCONFDIR
2247 * Bug #6662: Increase icinga.cmd Limit
2248 * Bug #6665: Build fails when MySQL is not installed
2249 * Bug #6671: enabled_notification doesn't work as expected
2250 * Bug #6672: Icinga crashes after "Too many queued messages"
2251 * Bug #6673: enable_notifications = false for users has no effect
2252