forked from Icinga/icinga2
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog
2182 lines (1957 loc) · 123 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
# Icinga 2.x CHANGELOG
Please check [doc/1-about.md].
## What's New
### What's New in Version 2.6.0
#### Changes
* Client/Satellite setup
* The "bottom up" client configuration mode has been deprecated. Check [#13255](https://dev.icinga.com/issues/13255) for additional details and migration.
* Linux/Unix daemon
* Ensure that Icinga 2 does not leak file descriptors to executed commands.
* There are 2 processes started instead of previously just one process.
* Windows client
* Package bundles NSClient++ 0.5.0. ITL CheckCommands have been updated too.
* 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)
* Bugfixes for check plugins
* Cluster and API
* Provide location information for objects and templates in the API
* Improve log message for ignored config updates
* Fix cluster resync problem with API created objects (hosts, downtimes, etc.)
* Fix that API-created objects in a global zone are not synced to child endpoints
* Notifications
* Several bugfixes for downtime, custom and flapping notifications
* New ITL CheckCommands: logstash, glusterfs, iostats
* Package builds require a compiler which supports C++11 features (gcc-c++ >= 4.7, clang++)
* DB IDO
* Schema upgrade required (2.6.0.sql)
* 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.
#### Feature
* Feature 12566 (API): Provide location information for objects and templates in the API
* Feature 13255 (Cluster): Deprecate cluster/client mode "bottom up" w/ repository.d and node update-config
* Feature 12844 (Cluster): Check whether nodes are synchronizing the API log before putting them into UNKNOWN
* Feature 12623 (Cluster): Improve log message for ignored config updates
* Feature 12635 (Configuration): Suppress compiler warnings for auto-generated code
* Feature 12575 (Configuration): Implement support for default templates
* Feature 12554 (Configuration): Implement a command-line argument for "icinga2 console" to allow specifying a script file
* Feature 12544 (Configuration): Remove unused method: ApplyRule::DiscardRules
* Feature 10675 (Configuration): Command line option for config syntax validation
* Feature 13491 (Documentation): Update README.md and correct project URLs
* Feature 13457 (Documentation): Add a note for boolean values in the disk CheckCommand section
* Feature 13455 (Documentation): Troubleshooting: Add examples for fetching the executed command line
* Feature 13443 (Documentation): Update Windows screenshots in the client documentation
* Feature 13437 (Documentation): Add example for concurrent_checks in CheckerComponent object type
* Feature 13395 (Documentation): Add a note about removing "conf.d" on the client for "top down command endpoint" setups
* Feature 13327 (Documentation): Update API and Library Reference chapters
* Feature 13319 (Documentation): Add a note about pinning checks w/ command_endpoint
* Feature 13297 (Documentation): Add a note about default template import to the CheckCommand object
* Feature 13199 (Documentation): Doc: Swap packages.icinga.com w/ DebMon
* Feature 12834 (Documentation): Add more Timeperiod examples in the documentation
* Feature 12832 (Documentation): Add an example of multi-parents configuration for the Migration chapter
* Feature 12587 (Documentation): Update service monitoring and distributed docs
* Feature 12449 (Documentation): Add information about function 'range'
* Feature 13449 (ITL): Add tempdir attribute to postgres CheckCommand
* Feature 13435 (ITL): Add sudo option to mailq CheckCommand
* Feature 13433 (ITL): Add verbose parameter to http CheckCommand
* Feature 13431 (ITL): Add timeout option to mysql_health CheckCommand
* Feature 12762 (ITL): Add a radius CheckCommand for the radius check provide by nagios-plugins
* Feature 12755 (ITL): Add CheckCommand definition for check_logstash
* Feature 12739 (ITL): Add timeout option to oracle_health CheckCommand
* Feature 12613 (ITL): Add CheckCommand definition for check_iostats
* Feature 12516 (ITL): ITL - check_vmware_esx - specify a datacenter/vsphere server for esx/host checks
* Feature 12040 (ITL): Add CheckCommand definition for check_glusterfs
* Feature 12576 (Installation): Use raw string literals in mkembedconfig
* Feature 12564 (Installation): Improve detection for the -flto compiler flag
* Feature 12552 (Installation): Set versions for all internal libraries
* Feature 12537 (Installation): Update cmake config to require a compiler that supports C++11
* Feature 9119 (Installation): Make the user account configurable for the Windows service
* Feature 12733 (Packages): Windows Installer should include NSClient++ 0.5.0
* Feature 12679 (Plugins): Review windows plugins performance output
* Feature 13225 (Tests): Add unit test for notification state/type filter checks
* Feature 12530 (Tests): Implement unit tests for state changes
* Feature 12562 (libbase): Use lambda functions for INITIALIZE_ONCE
* Feature 12561 (libbase): Use 'auto' for iterator declarations
* Feature 12555 (libbase): Implement an rvalue constructor for the String and Value classes
* Feature 12538 (libbase): Replace BOOST_FOREACH with range-based for loops
* Feature 12536 (libbase): Add -fvisibility=hidden to the default compiler flags
* Feature 12510 (libbase): Implement an environment variable to keep Icinga from closing FDs on startup
* Feature 12509 (libbase): Avoid unnecessary string copies
* Feature 12507 (libbase): Remove deprecated functions
* Feature 9182 (libbase): Better message for apply errors
* Feature 12578 (libicinga): Make sure that libmethods is automatically loaded even when not using the ITL
#### Bugfixes
* Bug 12860 (API): Icinga crashes while deleting a config file which doesn't exist anymore
* Bug 12667 (API): Crash in HttpRequest::Parse while processing HTTP request
* Bug 12621 (API): Invalid API filter error messages
* Bug 11541 (API): Objects created in a global zone are not synced to child endpoints
* Bug 11329 (API): API requests from execute-script action are too verbose
* Bug 13419 (CLI): Wrong help string for node setup cli command argument --master_host
* Bug 12741 (CLI): Parse error: "premature EOF" when running "icinga2 node update-config"
* Bug 12596 (CLI): Last option highlighted as the wrong one, even when it is not the culprit
* Bug 13151 (Cluster): Crash w/ SendNotifications cluster handler and check result with empty perfdata
* Bug 11684 (Cluster): Cluster resync problem with API created objects
* Bug 10897 (Compat): SCHEDULE_AND_PROPAGATE_HOST_DOWNTIME command missing
* Bug 10896 (Compat): SCHEDULE_AND_PROPAGATE_TRIGGERED_HOST_DOWNTIME command missing
* Bug 12749 (Configuration): Configuration validation fails when setting tls_protocolmin to TLSv1.2
* Bug 12633 (Configuration): Validation does not highlight the correct attribute
* Bug 12571 (Configuration): Debug hints for dictionary expressions are nested incorrectly
* Bug 12556 (Configuration): Config validation shouldnt allow 'endpoints = [ "" ]'
* Bug 13221 (DB IDO): PostgreSQL: Don't use timestamp with timezone for UNIX timestamp columns
* Bug 12558 (DB IDO): Getting error during schema update
* Bug 12514 (DB IDO): Don't link against libmysqlclient_r
* Bug 10502 (DB IDO): MySQL 5.7.9, Incorrect datetime value Error
* Bug 13519 (Documentation): "2.1.4. Installation Paths" should contain systemd paths
* Bug 13517 (Documentation): Update "2.1.3. Enabled Features during Installation" - outdated "feature list"
* Bug 13515 (Documentation): Update package instructions for Fedora
* Bug 13411 (Documentation): Missing API headers for X-HTTP-Method-Override
* Bug 13407 (Documentation): Fix example in PNP template docs
* Bug 13267 (Documentation): Docs: Typo in "CLI commands" chapter
* Bug 12933 (Documentation): Docs: wrong heading level for commands.conf and groups.conf
* Bug 12831 (Documentation): Typo in the documentation
* Bug 12822 (Documentation): Fix some spelling mistakes
* Bug 12725 (Documentation): Add documentation for logrotation for the mainlog feature
* Bug 12681 (Documentation): Corrections for distributed monitoring chapter
* Bug 12664 (Documentation): Docs: Migrating Notification example tells about filters instead of types
* Bug 12662 (Documentation): GDB example in the documentation isn't working
* Bug 12594 (Documentation): Typo in distributed monitoring docs
* Bug 12577 (Documentation): Fix help output for update-links.py
* Bug 12995 (Graphite): Performance data writer for Graphite : Values without fraction limited to 2147483647 (7FFFFFFF)
* Bug 12849 (ITL): Default values for check_swap are incorrect
* Bug 12838 (ITL): snmp_miblist variable to feed the -m option of check_snmp is missing in the snmpv3 CheckCommand object
* Bug 12747 (ITL): Problem passing arguments to nscp-local CheckCommand objects
* Bug 12588 (ITL): Default disk plugin check should not check inodes
* Bug 12586 (ITL): Manubulon: Add missing procurve memory flag
* Bug 12573 (ITL): Fix code style violations in the ITL
* Bug 12570 (ITL): Incorrect help text for check_swap
* Bug 12535 (Installation): logrotate file is not properly generated when the logrotate binary resides in /usr/bin
* Bug 13205 (Notifications): Recovery notifications sent for Not-Problem notification type if notified before
* Bug 12892 (Notifications): Flapping notifications sent for soft state changes
* Bug 12670 (Notifications): Forced custom notification is setting "force_next_notification": true permanently
* Bug 12560 (Notifications): Don't send Flapping* notifications when downtime is active
* Bug 12549 (Notifications): Fixed downtimes scheduled for a future date trigger DOWNTIMESTART notifications
* Bug 12276 (Perfdata): InfluxdbWriter does not write state other than 0
* Bug 12155 (Plugins): check_network performance data in invalid format - ingraph
* Bug 10489 (Plugins): Windows Agent: performance data of check_perfmon
* Bug 10487 (Plugins): Windows Agent: Performance data values for check_perfmon.exe are invalid sometimes
* Bug 9831 (Plugins): Implement support for resolving DNS hostnames in check_ping.exe
* Bug 12940 (libbase): SIGALRM handling may be affected by recent commit
* Bug 12718 (libbase): Crash in ClusterEvents::SendNotificationsAPIHandler
* Bug 12545 (libbase): Add missing initializer for WorkQueue::m_NextTaskID
* Bug 12534 (libbase): Fix compiler warnings
* Bug 8900 (libbase): File descriptors are leaked to child processes which makes SELinux unhappy
* Bug 13275 (libicinga): Icinga tries to delete Downtime objects that were statically configured
* Bug 13103 (libicinga): Config validation crashes when using command_endpoint without also having an ApiListener object
* Bug 12602 (libicinga): Remove unused last_in_downtime field
* Bug 12592 (libicinga): Unexpected state changes with max_check_attempts = 2
* Bug 12511 (libicinga): Don't update TimePeriod ranges for inactive objects
### What's New in Version 2.5.4
#### Bugfixes
* Bug 11932 (Checker): many check commands executed at same time when master reload
### What's New in Version 2.5.3
#### Changes
This release addresses an issue with PostgreSQL support for the IDO database module.
#### Bugfixes
* Bug 12533 (DB IDO): ido pgsql migration from 2.4.0 to 2.5.0 : wrong size for config_hash
### What's New in Version 2.5.2
#### Bugfixes
* Bug 12527 (DB IDO): Newly added group member tables in the IDO database are not updated
* Bug 12529 (Checker): Icinga 2 sends SOFT recovery notifications
### What's New in Version 2.5.1
#### Bugfixes
* Bug 12517 (Notifications): Icinga 2 sends recovery notifications for SOFT NOT-OK states
### What's New in Version 2.5.0
#### Changes
* InfluxdbWriter feature
* API
* New endpoints: /v1/variables and /v1/templates (GET requests), /v1/action/generate-ticket (POST request)
* State/type filters for notifications/users are now string values (PUT, POST, GET requests)
* Configuration
* TimePeriod excludes/includes attributes
* DateTime object for formatting time strings
* New prototype methods: Array#filter, Array#unique, Array#map, Array#reduce
* icinga2.conf now includes plugins-contrib, manubulon, windows-plugins, nscp by default (ITL CheckCommand definitions)
* Performance improvements (config compiler and validation)
* CLI
* 'icinga2 object list' formats state/type filters as string values
* Compiled config files are now visible with "notice" debug level (hidden by default)
* CA serial file now uses a hash value (HA cluster w/ 2 CA directories)
* Cluster
* There is a known issue with >2 endpoints inside a zone. Icinga 2 will now log a warning.
* Support for accepted ciphers and minimum TLS version
* Connection and error logging has been improved.
* DB IDO
* Schema upgrade required (2.5.0.sql)
* Incremental config dump (performance boost)
* `categories` attribute is now an array. Previous method is deprecated and to be removed.
* DbCatLog is not enabled by default anymore.
* SSL support for MySQL
* New packages
* vim-icinga2 for syntax highlighting
* libicinga2 (Debian), icinga2-libs (RPM) for Icinga Studio packages
#### Feature
* Feature 7355 (libicinga): Exclude option for TimePeriod definitions
* Feature 8401 (Packages): Package for syntax highlighting
* Feature 9184 (Perfdata): Add timestamp support for GelfWriter
* Feature 9264 (ITL): Extend CheckCommand definitions for nscp-local
* Feature 9725 (DB IDO): Add SSL support for the IdoMysqlConnection feature
* Feature 9839 (Configuration): Implement support for formatting date/time
* Feature 9858 (Perfdata): Gelf module: expose 'perfdata' fields for 'CHECK_RESULT' events
* Feature 10140 (libicinga): Remove the deprecated IcingaStatusWriter feature
* Feature 10480 (Perfdata): Add InfluxDbWriter feature
* Feature 10553 (Documentation): Update SELinux documentation
* Feature 10669 (ITL): Add IPv4/IPv6 support to the rest of the monitoring-plugins
* Feature 10722 (ITL): icinga2.conf: Include plugins-contrib, manubulon, windows-plugins, nscp by default
* Feature 10816 (libbase): Add name attribute for WorkQueue class
* Feature 10952 (Packages): Provide packages for icinga-studio on Fedora
* Feature 11063 (API): Implement SSL cipher configuration support for the API feature
* Feature 11290 (API): ApiListener: Force server's preferred cipher
* Feature 11292 (API): ApiListener: Make minimum TLS version configurable
* Feature 11359 (ITL): Add "retries" option to check_snmp command
* Feature 11419 (Configuration): Config parser should not log names of included files by default
* Feature 11423 (libicinga): Cleanup downtimes created by ScheduleDowntime
* Feature 11445 (Configuration): Allow strings in state/type filters
* Feature 11599 (Documentation): Documentation review
* Feature 11612 (Configuration): Improve performance for field accesses
* Feature 11623 (Installation): Add script for automatically cherry-picking commits for minor versions
* Feature 11659 (Configuration): Remove the (unused) 'inherits' keyword
* Feature 11706 (API): Improve logging for HTTP API requests
* Feature 11739 (Packages): Windows Installer: Remove dependency on KB2999226 package
* Feature 11772 (Cluster): Add lag threshold for cluster-zone check
* Feature 11837 (Documentation): Use HTTPS for debmon.org links in the documentation
* Feature 11869 (ITL): Add CIM port parameter for esxi_hardware CheckCommand
* Feature 11875 (Tests): Add debugging mode for Utility::GetTime
* Feature 11931 (ITL): Adding option to access ifName for manubulon snmp-interface check command
* Feature 11941 (API): Support for enumerating available templates via the API
* Feature 11955 (API): Implement support for getting a list of global variables from the API
* Feature 11967 (DB IDO): Update DB IDO schema version to 1.14.1
* Feature 11968 (DB IDO): Enhance IDO check with schema version info
* Feature 11970 (ITL): add check command for plugin check_apache_status
* Feature 12006 (ITL): Add check command definitions for kdc and rbl
* Feature 12018 (Graphite): Add acknowledgement type to Graphite, InfluxDB, OpenTSDB metadata
* Feature 12024 (DB IDO): Change Ido*Connection 'categories' attribute to an array
* Feature 12041 (API): API: Add missing downtime_depth attribute
* Feature 12061 (ITL): Add check command definition for db2_health
* Feature 12106 (DB IDO): Do not populate logentries table by default
* Feature 12116 (Cluster): Enhance client disconnect message for "No data received on new API connection."
* Feature 12189 (ITL): Add support for "-A" command line switch to CheckCommand "snmp-process"
* Feature 12194 (Cluster): Improve log message for connecting nodes without configured Endpoint object
* Feature 12201 (Cluster): Improve error messages for failed certificate validation
* Feature 12215 (Cluster): Include IP address and port in the "New connection" log message
* Feature 12221 (ITL): A lot of missing parameters for (latest) mysql_health
* Feature 12222 (Cluster): Log a warning if there are more than 2 zone endpoint members
* Feature 12234 (CLI): Add history for icinga2 console
* Feature 12247 (Configuration): Add map/reduce and filter functionality for the Array class
* Feature 12254 (API): Remove obsolete debug log message
* Feature 12256 (ITL): Add check command definition for check_graphite
* Feature 12287 (Cluster): Enhance TLS handshake error messages with connection information
* Feature 12304 (Notifications): Add the notification type into the log message
* Feature 12314 (ITL): Add command definition for check_mysql_query
* Feature 12327 (API): Support for determining the Icinga 2 version via the API
* Feature 12329 (libicinga): Implement process_check_result script method for the Checkable class
* Feature 12336 (libbase): Improve logging for the WorkQueue class
* Feature 12338 (Configuration): Move internal script functions into the 'Internal' namespace
* Feature 12386 (Documentation): Rewrite Client and Cluster chapter and; add service monitoring chapter
* Feature 12389 (libbase): Include compiler name/version and build host name in --version
* Feature 12392 (ITL): Add custom variables for all check_swap arguments
* Feature 12393 (libbase): Implement support for marking functions as deprecated
* Feature 12407 (CLI): Implement support for inspecting variables with LLDB/GDB
* Feature 12408 (Configuration): Implement support for namespaces
* Feature 12412 (Documentation): Add URL and short description for Monitoring Plugins inside the ITL documentation
* Feature 12424 (ITL): Add perfsyntax parameter to nscp-local-counter CheckCommand
* Feature 12426 (Configuration): Implement comparison operators for the Array class
* Feature 12433 (API): Add API action for generating a PKI ticket
* Feature 12434 (DB IDO): Remove unused code from the IDO classes
* Feature 12435 (DB IDO): Incremental updates for the IDO database
* Feature 12448 (libbase): Improve performance for type lookups
* Feature 12450 (Cluster): Improve performance for Endpoint config validation
* Feature 12457 (libbase): Remove unnecessary Dictionary::Contains calls
* Feature 12468 (ITL): Add interfacetable CheckCommand options --trafficwithpkt and --snmp-maxmsgsize
* Feature 12477 (Documentation): Development docs: Add own section for gdb backtrace from a running process
* Feature 12481 (libbase): Remove some unused #includes
#### Bugfixes
* Bug 7354 (libicinga): Disable immediate hard state after first checkresult
* Bug 9242 (Cluster): Custom notification external commands do not work in a master-master setup
* Bug 9848 (libbase): Function::Invoke should optionally register ScriptFrame
* Bug 10061 (DB IDO): IDO: icinga_host/service_groups alias columns are TEXT columns
* Bug 10066 (DB IDO): Missing indexes for icinga_endpoints* and icinga_zones* tables in DB IDO schema
* Bug 10069 (DB IDO): IDO: check_source should not be a TEXT field
* Bug 10070 (DB IDO): IDO: there is no usable object index on icinga_{scheduleddowntime,comments}
* Bug 10075 (libbase): Race condition in CreatePipeOverlapped
* Bug 10363 (Notifications): Notification times w/ empty begin/end specifications prevent sending notifications
* Bug 10570 (API): /v1 returns HTML even if JSON is requested
* Bug 10903 (Perfdata): GELF multi-line output
* Bug 10937 (Configuration): High CPU usage with self-referenced parent zone config
* Bug 11182 (DB IDO): IDO: entry_time of all comments is set to the date and time when Icinga 2 was restarted
* Bug 11196 (Cluster): High load when pinning command endpoint on HA cluster
* Bug 11483 (libicinga): Numbers are not properly formatted in runtime macro strings
* Bug 11562 (Notifications): last_problem_notification should be synced in HA cluster
* Bug 11590 (Notifications): notification interval = 0 not honoured in HA clusters
* Bug 11622 (Configuration): Don't allow flow control keywords outside of other flow control constructs
* Bug 11648 (Packages): Reload permission error with SELinux
* Bug 11650 (Packages): RPM update starts disabled icinga2 service
* Bug 11688 (DB IDO): Outdated downtime/comments not removed from IDO database (restart)
* Bug 11730 (libicinga): Icinga 2 client gets killed during network scans
* Bug 11782 (Packages): Incorrect filter in pick.py
* Bug 11793 (Documentation): node setup: Add a note for --endpoint syntax for client-master connection
* Bug 11817 (Installation): Windows: Error with repository handler (missing /var/lib/icinga2/api/repository path)
* Bug 11823 (DB IDO): Volatile check results for OK->OK transitions are logged into DB IDO statehistory
* Bug 11825 (libicinga): Problems with check scheduling for HARD state changes (standalone/command_endpoint)
* Bug 11832 (Tests): Boost tests are missing a dependency on libmethods
* Bug 11847 (Documentation): Missing quotes for API action URL
* Bug 11851 (Notifications): Downtime notifications do not pass author and comment
* Bug 11862 (libicinga): SOFT OK-state after returning from a soft state
* Bug 11887 (ITL): Add "fuse.gvfsd-fuse" to the list of excluded file systems for check_disk
* Bug 11890 (Configuration): Config validation should not delete comments/downtimes w/o reference
* Bug 11894 (Configuration): Incorrect custom variable name in the hosts.conf example config
* Bug 11898 (libicinga): last SOFT state should be hard (max_check_attempts)
* Bug 11899 (libicinga): Flapping Notifications dependent on state change
* Bug 11903 (Documentation): Fix systemd client command formatting
* Bug 11905 (Documentation): Improve "Endpoint" documentation
* Bug 11926 (API): Trying to delete an object protected by a permissions filter, ends up deleting all objects that match the filter instead
* Bug 11933 (DB IDO): SOFT state changes with the same state are not logged
* Bug 11962 (DB IDO): Overflow in current_notification_number column in DB IDO MySQL
* Bug 11991 (Documentation): Incorrect URL for API examples in the documentation
* Bug 11993 (DB IDO): Comment/Downtime delete queries are slow
* Bug 12003 (libbase): Hang in TlsStream::Handshake
* Bug 12008 (Documentation): Add a note about creating Zone/Endpoint objects with the API
* Bug 12016 (Configuration): ConfigWriter::EmitScope incorrectly quotes dictionary keys
* Bug 12022 (Configuration): Icinga crashes when using include_recursive in an object definition
* Bug 12029 (Documentation): Migration docs still show unsupported CHANGE_*MODATTR external commands
* Bug 12044 (Packages): Icinga fails to build with OpenSSL 1.1.0
* Bug 12046 (Documentation): Typo in Manubulon CheckCommand documentation
* Bug 12067 (Documentation): Documentation: Setting up Plugins section is broken
* Bug 12077 (Documentation): Add a note to the docs that API POST updates to custom attributes/groups won't trigger re-evaluation
* Bug 12085 (DB IDO): deadlock in ido reconnect
* Bug 12092 (API): Icinga incorrectly disconnects all endpoints if one has a wrong certificate
* Bug 12098 (Configuration): include_recursive should gracefully handle inaccessible files
* Bug 12099 (Packages): Build fails with Visual Studio 2013
* Bug 12100 (libbase): Ensure to clear the SSL error queue before calling SSL_{read,write,do_handshake}
* Bug 12107 (DB IDO): Add missing index on state history for DB IDO cleanup
* Bug 12135 (ITL): ITL: check_iftraffic64.pl default values, wrong postfix value in CheckCommand
* Bug 12144 (Documentation): pkg-config is not listed as a build requirement in INSTALL.md
* Bug 12147 (DB IDO): IDO module starts threads before daemonize
* Bug 12179 (Cluster): Duplicate messages for command_endpoint w/ master and satellite
* Bug 12180 (Cluster): CheckerComponent sometimes fails to schedule checks in time
* Bug 12193 (Cluster): Increase cluster reconnect interval
* Bug 12199 (API): Fix URL encoding for '&'
* Bug 12204 (Documentation): Improve author information about check_yum
* Bug 12210 (DB IDO): Do not clear {host,service,contact}group_members tables on restart
* Bug 12216 (libicinga): icinga check reports "-1" for minimum latency and execution time and only uptime has a number but 0
* Bug 12217 (Documentation): Incorrect documentation about apply rules in zones.d directories
* Bug 12219 (Documentation): Missing explanation for three level clusters with CSR auto-signing
* Bug 12225 (libicinga): Icinga stats min_execution_time and max_execution_time are invalid
* Bug 12227 (Perfdata): Incorrect escaping / formatting of perfdata to InfluxDB
* Bug 12237 (Installation): Increase default systemd timeout
* Bug 12257 (Notifications): Notification interval mistimed
* Bug 12259 (Documentation): Incorrect API permission name for /v1/status in the documentation
* Bug 12267 (Notifications): Multiple notifications when master fails
* Bug 12274 (ITL): -q option for check_ntp_time is wrong
* Bug 12288 (DB IDO): Change the way outdated comments/downtimes are deleted on restart
* Bug 12293 (Notifications): Missing notification for recovery during downtime
* Bug 12302 (Cluster): Remove obsolete README files in tools/syntax
* Bug 12310 (Notifications): Notification sent too fast when one master fails
* Bug 12318 (Configuration): Icinga doesn't delete temporary icinga2.debug file when config validation fails
* Bug 12331 (libbase): Fix building Icinga with -fvisibility=hidden
* Bug 12333 (Notifications): Incorrect downtime notification events
* Bug 12334 (libbase): Handle I/O errors while writing the Icinga state file more gracefully
* Bug 12390 (libbase): Disallow casting "" to an Object
* Bug 12391 (libbase): Don't violate POSIX by ensuring that the argument to usleep(3) is less than 1000000
* Bug 12395 (libicinga): Flexible downtimes should be removed after trigger_time+duration
* Bug 12401 (DB IDO): Fixed downtime start does not update actual_start_time
* Bug 12402 (Notifications): Notification resent, even if interval = 0
* Bug 12404 (Notifications): Add log message if notifications are forced (i.e. filters are not checked)
* Bug 12409 (Configuration): 'use' keyword cannot be used with templates
* Bug 12416 (Documentation): The description for the http_certificate attribute doesn't have the right default value
* Bug 12417 (DB IDO): IDO does duplicate config updates
* Bug 12418 (DB IDO): IDO marks objects as inactive on shutdown
* Bug 12422 (CLI): pki sign-csr does not log where it is writing the certificate file
* Bug 12425 (libicinga): CompatUtility::GetCheckableNotificationStateFilter is returning an incorrect value
* Bug 12428 (DB IDO): Fix the "ido" check command for use with command_endpoint
* Bug 12430 (DB IDO): ido CheckCommand returns returns "Could not connect to database server" when HA enabled
* Bug 12432 (Cluster): Only allow sending command_endpoint checks to directly connected child zones
* Bug 12438 (libbase): Replace GetType()->GetName() calls with GetReflectionType()->GetName()
* Bug 12442 (Documentation): Missing documentation for "legacy-timeperiod" template
* Bug 12452 (Installation): Remove unused functions from icinga-installer
* Bug 12453 (libbase): Use hash-based serial numbers for new certificates
* Bug 12454 (API): API: action schedule-downtime requires a duration also when fixed is true
* Bug 12458 (DB IDO): Insert fails for the icinga_scheduleddowntime table due to duplicate key
* Bug 12459 (DB IDO): Query for customvariablestatus incorrectly updates the host's/service's insert ID
* Bug 12460 (Cluster): DB IDO started before daemonizing (no systemd)
* Bug 12461 (DB IDO): IDO query fails due to key contraint violation for the icinga_customvariablestatus table
* Bug 12464 (API): API: events for DowntimeTriggered does not provide needed information
* Bug 12473 (Documentation): Docs: API example uses wrong attribute name
* Bug 12474 (libmethods): ClrCheck is null on *nix
* Bug 12475 (Cluster): Incorrect certificate validation error message
* Bug 12487 (Configuration): Memory leak when using closures
* Bug 12488 (Documentation): Typo in Notification object documentation
### What's New in Version 2.4.10
#### Bugfixes
* Bug 11812 (Checker): Checker component doesn't execute any checks for command_endpoint
### What's New in Version 2.4.9
#### Changes
This release fixes a number of issues introduced in 2.4.8.
#### Bugfixes
* 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'
* Bug 11804 (Configuration): Segfault when trying to start 2.4.8
* Bug 11807 (Compat): Command Pipe thread 100% CPU Usage
### What's New in Version 2.4.8
#### Changes
* Bugfixes
* Support for limiting the maximum number of concurrent checks (new configuration option)
* HA-aware features now wait for connected cluster nodes in the same zone (e.g. DB IDO)
* The 'icinga' check now alerts on failed reloads
#### Feature
* Feature 8137 (Checker): Maximum concurrent service checks
* Feature 9236 (Perfdata): PerfdataWriter: Better failure handling for file renames across file systems
* Feature 9997 (libmethods): "icinga" check should have state WARNING when the last reload failed
* Feature 10581 (ITL): Provide icingacli in the ITL
* Feature 11556 (libbase): Add support for subjectAltName in SSL certificates
* Feature 11651 (CLI): Implement SNI support for the CLI commands
* Feature 11720 (ITL): 'disk' CheckCommand: Exclude 'cgroup' and 'tracefs' by default
* Feature 11748 (Cluster): Remove unused cluster commands
* Feature 11765 (Cluster): Only activate HARunOnce objects once there's a cluster connection
* Feature 11768 (Documentation): Add the category to the generated changelog
#### Bugfixes
* Bug 9989 (Configuration): Service apply without name possible
* Bug 10426 (libicinga): Icinga crashes with a segfault on receiving a lot of check results for nonexisting hosts/services
* Bug 10717 (Configuration): Comments and downtimes of deleted checkable objects are not deleted
* Bug 11046 (Cluster): Icinga2 agent gets stuck after disconnect and won't relay messages
* Bug 11112 (Compat): Empty author/text attribute for comment/downtimes external commands causing crash
* Bug 11147 (libicinga): "day -X" time specifications are parsed incorrectly
* Bug 11158 (libicinga): Crash with empty ScheduledDowntime 'ranges' attribute
* Bug 11374 (API): Icinga2 API: deleting service with cascade=1 does not delete dependant notification
* Bug 11390 (Compat): Command pipe overloaded: Can't send external Icinga command to the local command file
* Bug 11396 (API): inconsistent API /v1/objects/* response for PUT requests
* Bug 11589 (libicinga): notification sent out during flexible downtime
* Bug 11645 (Documentation): Incorrect chapter headings for Object#to_string and Object#type
* Bug 11646 (Configuration): Wrong log severity causes segfault
* Bug 11686 (API): Icinga Crash with the workflow Create_Host-> Downtime for the Host -> Delete Downtime -> Remove Host
* Bug 11711 (libicinga): Expired downtimes are not removed
* Bug 11714 (libbase): Crash in UnameHelper
* Bug 11742 (Documentation): Missing documentation for event commands w/ execution bridge
* Bug 11757 (API): API: Missing error handling for invalid JSON request body
* Bug 11767 (DB IDO): Ensure that program status updates are immediately updated in DB IDO
* Bug 11779 (API): Incorrect variable names for joined fields in filters
### What's New in Version 2.4.7
#### Bugfixes
* Bug 11639: Crash in IdoMysqlConnection::ExecuteMultipleQueries
### What's New in Version 2.4.6
#### Feature
* Feature 11638: Update RELEASE.md
#### Bugfixes
* Bug 11628: Docs: Zone attribute 'endpoints' is an array
* Bug 11634: Icinga 2 fails to build on Ubuntu Xenial
* Bug 11635: Failed assertion in IdoPgsqlConnection::FieldToEscapedString
### What's New in Version 2.4.5
#### Changes
* Windows Installer changed from NSIS to MSI
* New configuration attribute for hosts and services: check_timeout (overrides the CheckCommand's timeout when set)
* ITL updates
* Lots of bugfixes
#### Feature
* Feature 9283: Implement support for overriding check command timeout
* Feature 9618: Add Windows setup wizard screenshots
* Feature 11098: Add --method parameter for check_{oracle,mysql,mssql}_health CheckCommands
* Feature 11194: Add --units, --rate and --rate-multiplier support for the snmpv3 check command
* Feature 11399: Update .mailmap for Markus Frosch
* Feature 11437: Add silent install / reference to NSClient++ to documentation
* Feature 11449: Build 64-bit packages for Windows
* Feature 11473: Update NSClient++ to version 0.4.4.19
* Feature 11474: Install 64-bit version of NSClient++ on 64-bit versions of Windows
* Feature 11585: Make sure to update the agent wizard banner
* Feature 11587: Update chocolatey uninstall script for the MSI package
#### Bugfixes
* Bug 9249: logrotate fails since the "su" directive was removed
* Bug 10624: Add application manifest for the Windows agent wizard
* Bug 10843: DB IDO: downtime is not in effect after restart
* Bug 11106: Too many assign where filters cause stack overflow
* Bug 11224: Socket Exceptions (Operation not permitted) while reading from API
* Bug 11227: Downtimes and Comments are not synced to child zones
* Bug 11258: Incorrect base URL in the icinga-rpm-release packages for Fedora
* Bug 11336: Use retry_interval instead of check_interval for first OK -> NOT-OK state change
* Bug 11347: Symlink subfolders not followed/considered for config files
* Bug 11382: Downtimes are not always activated/expired on restart
* Bug 11384: Remove dependency for .NET 3.5 from the chocolatey package
* Bug 11387: IDO: historical contact notifications table column notification_id is off-by-one
* Bug 11402: Explain how to use functions for wildcard matches for arrays and/or dictionaries in assign where expressions
* Bug 11407: Docs: Remove the migration script chapter
* Bug 11434: Config validation for Notification objects should check whether the state filters are valid
* Bug 11435: Icinga 2 Windows Agent does not honor install path during upgrade
* Bug 11438: Remove semi-colons in the auto-generated configs
* Bug 11439: Update the CentOS installation documentation
* Bug 11440: Docs: Cluster manual SSL generation formatting is broken
* Bug 11455: ConfigSync broken from 2.4.3. to 2.4.4 under Windows
* Bug 11462: Error compiling icinga2 targeted for x64 on Windows
* Bug 11475: FatalError() returns when called before Application.Run
* Bug 11482: API User gets wrongly authenticated (client_cn and no password)
* Bug 11484: Overwriting global type variables causes crash in ConfigItem::Commit()
* Bug 11494: Update documentation URL for Icinga Web 2
* Bug 11522: Make the socket event engine configurable
* Bug 11534: DowntimesExpireTimerHandler crashes Icinga2 with <unknown function>
* Bug 11542: make install overwrites configuration files
* Bug 11559: Segfault during config validation if host exists, service does not exist any longer and downtime expires
* Bug 11564: Incorrect link in the documentation
* Bug 11567: Navigation attributes are missing in /v1/objects/<type>
* Bug 11574: Package fails to build on *NIX
* Bug 11577: Compiler warning in NotifyActive
* Bug 11582: icinga2 crashes when a command_endpoint is set, but the api feature is not active
* Bug 11586: icinga2-installer.exe doesn't wait until NSIS uninstall.exe exits
* Bug 11592: Remove instance_name from Ido*Connection example
* Bug 11610: Windows installer does not copy "features-enabled" on upgrade
* Bug 11617: Vim Syntax Highlighting does not work with assign where
### What's New in Version 2.4.4
#### Feature
* Feature 10358: ITL: Allow to enforce specific SSL versions using the http check command
* Feature 11205: Add "query" option to check_postgres command.
#### Bugfixes
* Bug 9642: Flapping notifications are sent for hosts/services which are in a downtime
* Bug 9969: Problem notifications while Flapping is active
* Bug 10225: Host notification type is PROBLEM but should be RECOVERY
* Bug 10231: MkDirP not working on Windows
* Bug 10766: DB IDO: User notification type filters are incorrect
* Bug 10770: Status code 200 even if an object could not be deleted.
* Bug 10795: http check's URI is really just Path
* Bug 10976: Explain how to join hosts/services for /v1/objects/comments
* Bug 11107: ITL: Missing documentation for nwc_health "mode" parameter
* Bug 11159: Common name in node wizard isn't case sensitive
* Bug 11208: CMake does not find MySQL libraries on Windows
* Bug 11209: Wrong log message for trusted cert in node setup command
* Bug 11240: DEL_DOWNTIME_BY_HOST_NAME does not accept optional arguments
* Bug 11248: Active checks are executed even though passive results are submitted
* Bug 11257: Incorrect check interval when passive check results are used
* Bug 11273: Services status updated multiple times within check_interval even though no retry was triggered
* Bug 11289: epoll_ctl might cause oops on Ubuntu trusty
* Bug 11320: Volatile transitions from HARD NOT-OK->NOT-OK do not trigger notifications
* Bug 11328: Typo in API docs
* Bug 11331: Update build requirements for SLES 11 SP4
* Bug 11349: 'icinga2 feature list' fails when all features are disabled
* Bug 11350: Docs: Add API examples for creating services and check commands
* Bug 11352: Segmentation fault during 'icinga2 daemon -C'
* Bug 11369: Chocolatey package is missing uninstall function
* Bug 11385: Update development docs to use 'thread apply all bt full'
### What's New in Version 2.4.3
#### Bugfixes
* Bug 11211: Permission problem after running icinga2 node wizard
* Bug 11212: Wrong permissions for files in /var/cache/icinga2/*
### What's New in Version 2.4.2
#### Changes
* ITL
Additional arguments for check_disk
Fix incorrect path for the check_hpasm plugin
New command: check_iostat
Fix incorrect variable names for the check_impi plugin
* Cluster
Improve cluster performance
Fix connection handling problems (multiple connections for the same endpoint)
* Performance improvements for the DB IDO modules
* Lots and lots of various other bugfixes
* Documentation updates
#### Feature
* Feature 10660: Add CMake flag for disabling the unit tests
* Feature 10777: Add check_iostat to ITL
* Feature 10787: Add "-x" parameter in command definition for disk-windows CheckCommand
* Feature 10807: Raise a config error for "Checkable" objects in global zones
* Feature 10857: DB IDO: Add a log message when the connection handling is completed
* Feature 10860: Log DB IDO query queue stats
* Feature 10880: "setting up check plugins" section should be enhanced with package manager examples
* Feature 10920: Add Timeout parameter to snmpv3 check
* Feature 10947: Add example how to use custom functions in attributes
* Feature 10964: Troubleshooting: Explain how to fetch the executed command
* Feature 10988: Support TLSv1.1 and TLSv1.2 for the cluster transport encryption
* Feature 11037: Add String#trim
* Feature 11138: Checkcommand Disk : Option Freespace-ignore-reserved
#### Bugfixes
* Bug 7287: Re-checks scheduling w/ retry_interval
* Bug 8714: Add priority queue for disconnect/programstatus update events
* Bug 8976: DB IDO: notification_id for contact notifications is out of range
* Bug 10226: Icinga2 reload timeout results in killing old and new process because of systemd
* Bug 10449: Livestatus log query - filter "class" yields empty results
* Bug 10458: Incorrect SQL command for creating the user of the PostgreSQL DB for the IDO
* Bug 10460: A PgSQL DB for the IDO can't be created w/ UTF8
* Bug 10497: check_memory and check_swap plugins do unit conversion and rounding before percentage calculations resulting in imprecise percentages
* Bug 10544: check_network performance data in invalid format
* Bug 10554: Non-UTF8 characters from plugins causes IDO to fail
* Bug 10655: API queries cause memory leaks
* Bug 10700: Crash in ExternalCommandListener
* Bug 10711: Zone::CanAccessObject is very expensive
* Bug 10713: ApiListener::ReplayLog can block with a lot of clients
* Bug 10714: API is not working on wheezy
* Bug 10724: Remove the local zone name question in node wizard
* Bug 10728: node wizard does not remember user defined port
* Bug 10736: Missing num_hosts_pending in /v1/status/CIB
* Bug 10739: Crash on startup with incorrect directory permissions
* Bug 10744: build of icinga2 with gcc 4.4.7 segfaulting with ido
* Bug 10745: ITL check command possibly mistyped variable names
* Bug 10748: Missing path in mkdir() exceptions
* Bug 10760: Disallow lambda expressions where side-effect-free expressions are not allowed
* Bug 10765: Avoid duplicate config and status updates on startup
* Bug 10773: chcon partial context error in safe-reload prevents reload
* Bug 10779: Wrong postgresql-setup initdb command for RHEL7
* Bug 10780: The hpasm check command is using the PluginDir constant
* Bug 10784: Incorrect information in --version on Linux
* Bug 10806: Missing SUSE repository for monitoring plugins documentation
* Bug 10817: Failed IDO query for icinga_downtimehistory
* Bug 10818: Use NodeName in null and random checks
* Bug 10819: Cluster config sync ignores zones.d from API packages
* Bug 10824: Windows build fails with latest git master
* Bug 10825: Missing documentation for API packages zones.d config sync
* Bug 10826: Build error with older CMake versions on VERSION_LESS compare
* Bug 10828: Relative path in include_zones does not work
* Bug 10829: IDO breaks when writing to icinga_programstatus with latest snapshots
* Bug 10830: Config validation doesn't fail when templates are used as object names
* Bug 10852: Formatting problem in "Advanced Filter" chapter
* Bug 10855: Implement support for re-ordering groups of IDO queries
* Bug 10862: Evaluate if CanExecuteQuery/FieldToEscapedString lead to exceptions on !m_Connected
* Bug 10867: "repository add" cli command writes invalid "type" attribute
* Bug 10883: Icinga2 crashes in IDO when removing a comment
* Bug 10890: Remove superfluous #ifdef
* Bug 10891: is_active in IDO is only re-enabled on "every second" restart
* Bug 10908: Typos in the "troubleshooting" section of the documentation
* Bug 10923: API actions: Decide whether fixed: false is the right default
* Bug 10931: Exception stack trace on icinga2 client when the master reloads the configuration
* Bug 10932: Cluster config sync: Ensure that /var/lib/icinga2/api/zones/* exists
* Bug 10935: Logrotate on systemd distros should use systemctl not service
* Bug 10948: Icinga state file corruption with temporary file creation
* Bug 10956: Compiler warnings in lib/remote/base64.cpp
* Bug 10959: Better explaination for array values in "disk" CheckCommand docs
* Bug 10963: high load and memory consumption on icinga2 agent v2.4.1
* Bug 10968: Race condition when using systemd unit file
* Bug 10974: Modified attributes do not work for the IcingaApplication object w/ external commands
* Bug 10979: Mistake in mongodb command definition (mongodb_replicaset)
* Bug 10981: Incorrect name in AUTHORS
* Bug 10989: Escaped sequences not properly generated with 'node update-config'
* Bug 10991: Stream buffer size is 512 bytes, could be raised
* Bug 10998: Incorrect IdoPgSqlConnection Example in Documentation
* Bug 11006: Segfault in ApiListener::ConfigUpdateObjectAPIHandler
* Bug 11014: Check event duplication with parallel connections involved
* Bug 11019: next_check noise in the IDO
* Bug 11020: Master reloads with agents generate false alarms
* Bug 11065: Deleting an object via API does not disable it in DB IDO
* Bug 11074: Partially missing escaping in doc/7-icinga-template-library.md
* Bug 11075: Outdated link to icingaweb2-module-nagvis
* Bug 11083: Ensure that config sync updates are always sent on reconnect
* Bug 11085: Crash in ConfigItem::RunWithActivationContext
* Bug 11088: API queries on non-existant objects cause exception
* Bug 11096: Windows build fails on InterlockedIncrement type
* Bug 11103: Problem with hostgroup_members table cleanup
* Bug 11111: Clean up unused variables a bit
* Bug 11118: Cluster WQ thread dies after fork()
* Bug 11122: Connections are not cleaned up properly
* Bug 11132: YYYY-MM-DD time specs are parsed incorrectly
* Bug 11178: Documentation: Unescaped pipe character in tables
* Bug 11179: CentOS 5 doesn't support epoll_create1
* Bug 11204: "node setup" tries to chown() files before they're created
### What's New in Version 2.4.1
#### Changes
* ITL
* Add running_kernel_use_sudo option for the running_kernel check
* Configuration
* Add global constants: `PlatformName`. `PlatformVersion`, `PlatformKernel` and `PlatformKernelVersion`
* CLI
* Use NodeName and ZoneName constants for 'node setup' and 'node wizard'
#### Feature
* Feature 10622: Add by_ssh_options argument for the check_by_ssh plugin
* Feature 10693: Add running_kernel_use_sudo option for the running_kernel check
* Feature 10716: Use NodeName and ZoneName constants for 'node setup' and 'node wizard'
#### Bugfixes
* Bug 10528: Documentation example in "Access Object Attributes at Runtime" doesn't work correctly
* Bug 10615: Build fails on SLES 11 SP3 with GCC 4.8
* Bug 10632: "node wizard" does not ask user to verify SSL certificate
* Bug 10641: API setup command incorrectly overwrites existing certificates
* Bug 10643: Icinga 2 crashes when ScheduledDowntime objects are used
* Bug 10645: Documentation for schedule-downtime is missing required paremeters
* Bug 10648: lib/base/process.cpp SIGSEGV on Debian squeeze / RHEL 6
* Bug 10661: Incorrect web inject URL in documentation
* Bug 10663: Incorrect redirect for stderr in /usr/lib/icinga2/prepare-dirs
* Bug 10667: Indentation in command-plugins.conf
* Bug 10677: node wizard checks for /var/lib/icinga2/ca directory but not the files
* Bug 10690: CLI command 'repository add' doesn't work
* Bug 10692: Fix typos in the documentation
* Bug 10708: Windows setup wizard crashes when InstallDir registry key is not set
* Bug 10710: Incorrect path for icinga2 binary in development documentation
* Bug 10720: Remove --master_zone from --help because it is currently not implemented
### What's New in Version 2.4.0
#### Changes
* API
* RESTful API with basic auth or client certificates
* Filters, types, permissions
* configuration package management
* query/create/modify/delete config objects at runtime
* status queries for global stats
* actions (e.g. acknowledge all service problems)
* event streams
* ITL and Plugin Check Command definitions
* The 'running_kernel' check command was moved to the plugins-contrib section. You have to update your config to include 'plugins-contrib'
* Configuration
* The global constants Enable* and Vars have been removed. Use the IcingaApplication object attributes instead.
* Features
* New Graphite tree. Please check the documentation how enable the legacy schema.
* IcingaStatusWriter feature has been deprecated and will be removed in future versions.
* Modified attributes are not exposed as bit mask to external interfaces anymore (api related changes). External commands like CHANGE_*_MODATTR have been removed.
#### Feature
* Feature 7709: Validators should be implemented in (auto-generated) native code
* Feature 8093: Add icinga, cluster, cluster-zone check information to the ApiListener status handler
* Feature 8149: graphite writer should pass "-" in host names and "." in perf data
* Feature 8666: Allow some of the Array and Dictionary methods to be inlined by the compiler
* Feature 8688: Add embedded DB IDO version health check
* Feature 8689: Add support for current and current-1 db ido schema version
* Feature 8690: 'icinga2 console' should serialize temporary attributes (rather than just config + state)
* Feature 8738: Implement support for CLIENT_MULTI_STATEMENTS
* Feature 8741: Deprecate IcingaStatusWriter feature
* Feature 8775: Move the base command templates into libmethods
* Feature 8776: Implement support for libedit
* Feature 8791: Refactor the startup process
* Feature 8832: Implement constructor-style casts
* Feature 8842: Add support for the C++11 keyword 'override'
* Feature 8867: Use DebugHint information when reporting validation errors
* Feature 8890: Move implementation code from thpp files into separate files
* Feature 8922: Avoid unnecessary dictionary lookups
* Feature 9044: Remove the ScopeCurrent constant
* Feature 9068: Implement sandbox mode for the config parser
* Feature 9074: Basic API framework
* Feature 9076: Reflection support for the API
* Feature 9077: Implement filters for the API
* Feature 9078: Event stream support for the API
* Feature 9079: Implement status queries for the API
* Feature 9080: Add commands (actions) for the API
* Feature 9081: Add modified attribute support for the API
* Feature 9082: Runtime configuration for the API
* Feature 9083: Configuration file management for the API
* Feature 9084: Enable the ApiListener by default
* Feature 9085: Certificate-based authentication for the API
* Feature 9086: Password-based authentication for the API
* Feature 9087: Create default administrative user
* Feature 9088: API permissions
* Feature 9091: API status queries
* Feature 9093: Changelog for modified attributes
* Feature 9095: Disallow changes for certain config attributes at runtime
* Feature 9096: Dependency tracking for objects
* Feature 9098: Update modules to support adding and removing objects at runtime
* Feature 9099: Implement support for writing configuration files
* Feature 9100: Multiple sources for zone configuration tree
* Feature 9101: Commands for adding and removing objects
* Feature 9102: Support validating configuration changes
* Feature 9103: Staging for configuration validation
* Feature 9104: Implement config file management commands
* Feature 9105: API Documentation
* Feature 9175: Move 'running_kernel' check command to plugins-contrib 'operating system' section
* Feature 9286: DB IDO/Livestatus: Add zone object table w/ endpoint members
* Feature 9414: "-Wno-deprecated-register" compiler option breaks builds on SLES 11
* Feature 9447: Implement support for HTTP
* Feature 9448: Define RESTful url schema
* Feature 9461: New Graphite schema
* Feature 9470: Implement URL parser
* Feature 9471: Implement ApiUser type
* Feature 9594: Implement base64 de- and encoder
* Feature 9614: Register ServiceOK, ServiceWarning, HostUp, etc. as constants
* Feature 9647: Move url to /lib/remote from /lib/base
* Feature 9689: Add exceptions for Utility::MkDir{,P}
* Feature 9693: Add Array::FromVector() method
* Feature 9698: Implement support for X-HTTP-Method-Override
* Feature 9704: String::Trim() should return a new string rather than modifying the current string
* Feature 9705: Add real path sanity checks to provided file paths
* Feature 9723: Documentation for config management API
* Feature 9768: Update the url parsers behaviour
* Feature 9777: Make Comments and Downtime types available as ConfigObject type in the API
* Feature 9794: Setting global variables with i2tcl doesn't work
* Feature 9849: Validation for modified attributes
* Feature 9850: Re-implement events for attribute changes
* Feature 9851: Remove GetModifiedAttributes/SetModifiedAttributes
* Feature 9852: Implement support for . in modify_attribute
* Feature 9859: Implement global modified attributes
* Feature 9866: Implement support for attaching GDB to the Icinga process on crash
* Feature 9914: Rename DynamicObject/DynamicType to ConfigObject/ConfigType
* Feature 9919: Allow comments when parsing JSON
* Feature 9921: Implement the 'base' field for the Type class
* Feature 9926: Ensure that runtime config objects are persisted on disk
* Feature 9927: Figure out how to sync dynamically created objects inside the cluster
* Feature 9929: Add override keyword for all relevant methods
* Feature 9930: Document Object#clone
* Feature 9931: Implement Object#clone and rename Array/Dictionary#clone to shallow_clone
* Feature 9933: Implement support for indexers in ConfigObject::RestoreAttribute
* Feature 9935: Implement support for restoring modified attributes
* Feature 9937: Add package attribute for ConfigObject and set its origin
* Feature 9940: Implement support for filter_vars
* Feature 9944: Add String::ToLower/ToUpper
* Feature 9946: Remove debug messages in HttpRequest class
* Feature 9953: Rename config/modules to config/packages
* Feature 9960: Implement ignore_on_error keyword
* Feature 10017: Use an AST node for the 'library' keyword
* Feature 10038: Add plural_name field to /v1/types
* Feature 10039: URL class improvements
* Feature 10042: Implement a demo API client: Icinga Studio
* Feature 10060: Implement joins for status queries
* Feature 10116: Add global status handler for the API
* Feature 10186: Make ConfigObject::{G,S}etField() method public
* Feature 10194: Sanitize error status codes and messages
* Feature 10202: Add documentation for api-users.conf and app.conf
* Feature 10209: Rename statusqueryhandler to objectqueryhandler
* Feature 10212: Move /v1/<type> to /v1/objects/<type>
* Feature 10243: Provide keywords to retrieve the current file name at parse time
* Feature 10257: Change object version to timestamps for diff updates on config sync
* Feature 10329: Pretty-print arrays and dictionaries when converting them to strings
* Feature 10368: Document that modified attributes require accept_config for cluster/clients
* Feature 10374: Add check command nginx_status
* Feature 10383: DB IDO should provide its connected state via /v1/status
* Feature 10385: Add 'support' tracker to changelog.py
* Feature 10387: Use the API for "icinga2 console"
* Feature 10388: Log a warning message on unauthorized http request
* Feature 10392: Original attributes list in IDO
* Feature 10393: Hide internal attributes
* Feature 10394: Add getter for endpoint 'connected' attribute
* Feature 10407: Remove api.cpp, api.hpp
* Feature 10409: Add documentation for apply+for in the language reference chapter
* Feature 10423: Ability to set port on SNMP Checks
* Feature 10431: Add the name for comments/downtimes next to legacy_id to DB IDO
* Feature 10441: Rewrite man page
* Feature 10479: Use ZoneName variable for parent_zone in node update-config
* Feature 10482: Documentation: Reorganize Livestatus and alternative frontends
* Feature 10503: Missing parameters for check jmx4perl
* Feature 10507: Add check command negate
* Feature 10509: Change GetLastStateUp/Down to host attributes
* Feature 10511: Add check command mysql
* Feature 10513: Add ipv4/ipv6 only to tcp and http CheckCommand
* Feature 10522: Change output format for 'icinga2 console'
* Feature 10547: Icinga 2 script debugger
* Feature 10548: Implement CSRF protection for the API
* Feature 10549: Change 'api setup' into a manual step while configuring the API
* Feature 10551: Change object query result set
* Feature 10566: Enhance programmatic examples for the API docs
* Feature 10574: Mention wxWidget (optional) requirement in INSTALL.md
* Feature 10575: Documentation for /v1/console
* Feature 10576: Explain variable names for joined objects in filter expressions
* Feature 10577: Documentation for the script debugger
* Feature 10591: Explain DELETE for config stages/packages
* Feature 10630: Update wxWidgets documentation for Icinga Studio
#### Bugfixes
* Bug 8822: Update OpenSSL for the Windows builds
* Bug 8823: Don't allow users to instantiate the StreamLogger class
* Bug 8830: Make default notifications include users from host.vars.notification.mail.users
* Bug 8865: Failed assertion in IdoMysqlConnection::FieldToEscapedString
* Bug 8907: Validation fails even though field is not required
* Bug 8924: Specify pidfile for status_of_proc in the init script
* Bug 8952: Crash in VMOps::FunctionCall
* Bug 8989: pgsql driver does not have latest mysql changes synced
* Bug 9015: Compiler warnings with latest HEAD 5ac5f98
* Bug 9027: PostgreSQL schema sets default timestamps w/o time zone
* Bug 9053: icinga demo module can not be built
* Bug 9188: Remove incorrect 'ignore where' expression from 'ssh' apply example
* Bug 9455: Fix incorrect datatype for the check_source column in icinga_statehistory table
* Bug 9547: Wrong vars changed handler in api events
* Bug 9576: Overflow in freshness_threshold column (smallint) w/ DB IDO MySQL
* Bug 9590: 'node wizard/setup' should always generate new CN certificates
* Bug 9703: Problem with child nodes in http url registry
* Bug 9735: Broken cluster config sync w/o include_zones
* Bug 9778: Accessing field ID 0 ("prototype") fails
* Bug 9793: Operator - should not work with "" and numbers
* Bug 9795: ScriptFrame's 'Self' attribute gets corrupted when an expression throws an exception
* Bug 9813: win32 build: S_ISDIR is undefined
* Bug 9843: console autocompletion should take into account parent classes' prototypes
* Bug 9868: Crash in ScriptFrame::~ScriptFrame
* Bug 9872: Color codes in console prompt break line editing
* Bug 9876: Crash during cluster log replay
* Bug 9879: Missing conf.d or zones.d cause parse failure
* Bug 9911: Do not let API users create objects with invalid names
* Bug 9966: Fix formatting in mkclass
* Bug 9968: Implement support for '.' when persisting modified attributes
* Bug 9987: Crash in ConfigCompiler::RegisterZoneDir
* Bug 10008: Don't parse config files for branches not taken
* Bug 10012: Unused variable 'dobj' in configobject.tcpp
* Bug 10024: HTTP keep-alive does not work with .NET WebClient
* Bug 10027: Filtering by name doesn't work
* Bug 10034: Unused variable console_type in consolecommand.cpp
* Bug 10041: build failure: demo module
* Bug 10048: Error handling in HttpClient/icinga-studio
* Bug 10110: Add object_id where clause for icinga_downtimehistory
* Bug 10180: API actions do not follow REST guidelines
* Bug 10198: Detect infinite recursion in user scripts
* Bug 10210: Move the Collection status handler to /v1/status
* Bug 10211: PerfdataValue is not properly serialised in status queries
* Bug 10224: URL parser is cutting off last character
* Bug 10234: ASCII NULs don't work in string values
* Bug 10238: Use a temporary file for modified-attributes.conf updates
* Bug 10241: Properly encode URLs in Icinga Studio
* Bug 10249: Config Sync shouldn't send updates for objects the client doesn't have access to
* Bug 10253: /v1/objects/<type> returns an HTTP error when there are no objects of that type
* Bug 10255: Config sync does not set endpoint syncing and plays disconnect-sync ping-pong
* Bug 10256: ConfigWriter::EmitValue should format floating point values properly
* Bug 10326: icinga2 repository host add does not work
* Bug 10350: Remove duplicated text in section "Apply Notifications to Hosts and Services"
* Bug 10355: Version updates are not working properly
* Bug 10360: Icinga2 API performance regression
* Bug 10371: Ensure that modified attributes work with clients with local config and no zone attribute
* Bug 10386: restore_attribute does not work in clusters
* Bug 10403: Escaping $ not documented
* Bug 10406: Misleading wording in generated zones.conf
* Bug 10410: OpenBSD: hang during ConfigItem::ActivateItems() in daemon startup
* Bug 10417: 'which' isn't available in a minimal CentOS container
* Bug 10422: Changing a group's attributes causes duplicate rows in the icinga_*group_members table
* Bug 10433: 'dig_lookup' custom attribute for the 'dig' check command isn't optional
* Bug 10436: Custom variables aren't removed from the IDO database
* Bug 10439: "Command options" is empty when executing icinga2 without any argument.
* Bug 10440: Improve --help output for the --log-level option
* Bug 10455: Improve error handling during log replay
* Bug 10456: Incorrect attribute name in the documentation
* Bug 10457: Don't allow scripts to access FANoUserView attributes in sandbox mode
* Bug 10461: Line continuation is broken in 'icinga2 console'
* Bug 10466: Crash in IndexerExpression::GetReference when attempting to set an attribute on an object other than the current one
* Bug 10473: IDO tries to execute empty UPDATE queries
* Bug 10491: Unique constraint violation with multiple comment inserts in DB IDO
* Bug 10495: Incorrect JSON-RPC message causes Icinga 2 to crash
* Bug 10498: IcingaStudio: Accessing non-ConfigObjects causes ugly exception
* Bug 10501: Plural name rule not treating edge case correcly
* Bug 10504: Increase the default timeout for OS checks
* Bug 10508: Figure out whether we need the Checkable attributes state_raw, last_state_raw, hard_state_raw
* Bug 10510: CreatePipeOverlapped is not thread-safe
* Bug 10512: Mismatch on {comment,downtime}_id vs internal name in the API
* Bug 10517: Circular reference between *Connection and TlsStream objects
* Bug 10518: Crash in ConfigWriter::GetKeywords
* Bug 10527: Fix indentation for Dictionary::ToString
* Bug 10529: Change session_token to integer timestamp
* Bug 10535: Spaces do not work in command arguments
* Bug 10538: Crash in ConfigWriter::EmitIdentifier
* Bug 10539: Don't validate custom attributes that aren't strings