Michael Friedrich
b7358334fc
Add feature stats to 'icinga' check as performance data metrics
2017-05-23 17:28:54 +02:00
Michael Friedrich
456cfdc636
Implement WorkQueue metric stats and periodic logging
...
refs #5133
2017-05-23 16:00:21 +02:00
Michael Friedrich
52d986d02b
Revert "Add LogstashWriter feature"
...
This reverts commit f5a971f5b0
.
refs #4054
2017-05-23 12:05:01 +02:00
Michael Friedrich
4c7660190f
Revert "Review LogstashWriter feature implementation"
...
This reverts commit bd5ff814f2
.
refs #4054
2017-05-23 12:04:08 +02:00
Gunnar Beutner
fa874e659b
Build fix for I2_LEAK_DEBUG
2017-05-22 11:42:47 +02:00
Gunnar Beutner
7130e5e387
Merge pull request #5264 from Icinga/feature/array-match
...
Implement new array match functionality
fixes #5264
fixes #5263
2017-05-16 14:22:35 +02:00
Gunnar Beutner
958d3982c5
Add 'mode' argument for match, regex and cidr_match
2017-05-16 13:22:10 +02:00
Michael Friedrich
79dcb789c2
Move PerfdataValue() class into base library
...
This is required for libremote and ApiListener stats in #5133
2017-05-15 16:32:29 +02:00
Gunnar Beutner
dc9f129060
Implement the Array#any and Array#all protoype functions
2017-05-15 15:59:44 +02:00
Gunnar Beutner
1b77f4b336
Implement the Dictionary#values prototype function
2017-05-15 15:54:48 +02:00
Michael Friedrich
37f7c7a294
Merge pull request #5262 from Icinga/fix/graylog-perfdata
...
Fix performance data processing in GelfWriter feature
fixes #4666
2017-05-15 14:08:39 +02:00
Michael Friedrich
2338db5f6a
Fix performance data processing in GelfWriter feature
...
Includes fixes for possible crashes on empty check results.
fixes #4666
2017-05-15 13:46:43 +02:00
Gunnar Beutner
7e3b664140
Add missing ->GetName() calls
...
fixes #5256
2017-05-15 11:11:08 +02:00
Michael Friedrich
f282126bb4
Don't allow acknowledgement expire timestamps in the past
...
fixes #5250
2017-05-15 10:23:21 +02:00
Michael Friedrich
3753f53a67
Fix cluster crash w/ config sync
...
refs #5212
2017-05-12 10:48:11 +02:00
Michael Friedrich
ec6247ca35
Merge pull request #5247 from Icinga/feature/cluster-log-message
...
Add target object in cluster error messages to debug log
fixes #4288
2017-05-11 16:13:01 +02:00
Michael Friedrich
0f1aa23575
Add target object in cluster error messages to debug log
...
fixes #4288
2017-05-11 16:10:40 +02:00
Gunnar Beutner
b366483466
Add subjectAltName X509 ext for certificate requests
2017-05-11 15:38:17 +02:00
Michael Friedrich
8d56f8e951
Fix that host downtimes might be triggered even if their state is Up
...
If the checkresult's state is 1, this is internally mapped to Up.
The added downtime will check for triggers and might cause a wrong
downtime start event.
refs #5202
2017-05-11 15:05:50 +02:00
Gunnar Beutner
1c255140b5
Merge pull request #5242 from Icinga/feature/object-decl-expr
...
Allow expressions for the type in object/template declarations
fixes #5242
2017-05-11 14:30:29 +02:00
Gunnar Beutner
d05b7c4178
Allow expressions for the type in object/template declarations
2017-05-11 14:21:30 +02:00
Simon Murray
fc2c2d9a29
Verbose InfluxDB Error Logging
...
On a non 204 response we parse the HTTP response until complete e.g. do the headers
and body, not just the header. A new interface is added to the response to allow us
to determine the body size so that it may be read out and buffered. The body is
parsed and any error message printed out. In the event that the parsing fails the
raw body is dumped out; better than nothing!
fixes #4411
Signed-off-by: Michael Friedrich <michael.friedrich@icinga.com>
2017-05-11 12:13:41 +02:00
Rune Darrud
273ca6a2cc
Fix persistent comments for Acknowledgements
...
fixes #4818
Signed-off-by: Michael Friedrich <michael.friedrich@icinga.com>
2017-05-10 17:10:22 +02:00
Michael Friedrich
e0bfe0a5d0
Remove deprecated "DbCat1 | DbCat2" notation for DB IDO categories
...
This allows for a specific config validation function.
2017-05-10 14:32:53 +02:00
Michael Friedrich
452f8a1f0d
Merge pull request #5042 from mbrgm/upgrade-docs-link
...
Add link to upgrade documentation to DB IDO log message
2017-05-09 16:17:58 +02:00
Gunnar Beutner
c611a31670
Fix code style issues
...
refs #5219
2017-05-09 09:01:08 +02:00
Gunnar Beutner
f9b34cca30
Fix compiler warning
...
refs #5219
2017-05-08 08:47:27 +02:00
Michael Friedrich
3649a5a0d7
InfluxdbWriter: Use a work queue for async message processing; add stats log/api
2017-05-05 17:56:51 +02:00
Michael Friedrich
f9e0fd2e3e
Beautify some log message for cluster config sync
...
refs #5212
2017-05-04 15:21:32 +02:00
Gunnar Beutner
dadc21e12a
Merge pull request #5225 from Al2Klimov/bugfix/mysql_init-mysql_error-3664
...
Don't call mysql_error() after a failure of mysql_init()
fixes #3664
2017-05-04 14:58:55 +02:00
Alexander A. Klimov
0da226163f
Don't call mysql_error() after a failure of mysql_init()
...
refs #3664
2017-05-04 12:22:34 +02:00
Gunnar Beutner
f9f3358d09
Make sure all objects are set to 'active' before calling the Start() method
...
fixes #5224
2017-05-04 10:37:34 +02:00
Gunnar Beutner
4134f7fe42
Make sure modified attributes are applied before calling the objects' Start method
...
refs #4696
2017-05-03 12:02:19 +02:00
Jean Flach
7c70d51b27
Add a few extra log messages
...
fixes #5212
2017-05-02 10:54:06 +02:00
Jean Flach
e29e25aefd
Fix timestamp path
...
fixes #5211
2017-05-02 10:30:42 +02:00
Michael Friedrich
35f6f60390
Docs: Fix invalid/redirected URLs
...
fixes #5150
2017-04-28 17:02:13 +02:00
Michael Friedrich
21ce07046c
DB IDO: Disable external command history by default
...
That's not used in Icinga Web 2 and might lock the feature
on cleanup.
refs #4788
2017-04-28 09:37:27 +02:00
Gunnar Beutner
b62241e0ba
Remove redundant #include
...
refs #5168
2017-04-27 09:24:37 +02:00
Gunnar Beutner
d03d09160a
Clean up the IsAbsolutePath patch
...
refs #5168
2017-04-27 05:31:44 +02:00
Jean Flach
293625c17b
Fix absolute include paths for windows
...
fixes #5168
2017-04-24 15:39:21 +02:00
Michael Friedrich
d7b939d99b
Redis: Dump severity field to icinga:{host,service}state
...
refs #5117
2017-04-20 16:48:00 +02:00
Andreas Scherbaum
775bee8fe1
Replace http:// links with https:// links where a secure website exists
...
Leave out tests and third party tools, and license strings
fixes #5151
Signed-off-by: Michael Friedrich <michael.friedrich@icinga.com>
2017-04-20 11:33:27 +02:00
Gunnar Beutner
0f81c357c0
Implement source_location attribute for the ConfigObject class
...
refs #5120
2017-04-19 15:30:11 +02:00
Michael Friedrich
dc7980586b
Implement severity attribute for host/service objects
...
refs #5117
2017-04-13 16:09:31 +02:00
Michael Friedrich
17615ac444
Redis: Dump host and service state events
...
fixes #5163
2017-04-12 16:58:08 +02:00
Michael Friedrich
e4ae789a7c
Set zone attribute to no_user_modify for API POST requests
...
fixes #5166
2017-04-12 09:25:28 +02:00
Gunnar Beutner
c32badaff5
Add missing base class call for ScheduledDowntime::ValidateRanges()
...
fixes #5146
2017-04-06 11:25:40 +02:00
Jean Flach
1459970986
Add missing header
...
fixes #5135
2017-04-05 10:26:54 +02:00
Thomas Gelf
ed2ebdf0d0
RedisWriter: publish Icinga 2 stats as a simple "keepalive"
...
Use case: a reader subscribes to config changes. As they happen rarely, chances
are good that the connection will time out in the meantime. Now, a reconnect is
easy - but you wouldn't know whether you missed any config changes. So you are
required to issue a new sync to be on the safe side. Given a 60sec connection
timeout (think: SSL layer, firewalls etc) when no traffic happens this would be
too expensive.
Some kind of a heartbeat available for subscription would allow subscribers to
artificially keep the connection alive. As a first simple solution to this I'd
suggest to publish CIB data, that might be useful anyways.
refs #4991
fixes #5098
Signed-off-by: Michael Friedrich <michael.friedrich@icinga.com>
2017-03-29 10:17:03 +02:00
Michael Friedrich
2f84ff84b2
Fix object deletion on restart
...
refs #4991
2017-03-29 10:17:03 +02:00
Michael Friedrich
f76f655dc1
Rename source file
...
refs #4991
2017-03-29 10:17:03 +02:00
Michael Friedrich
af3e2c429f
Add exception handler for Redis WorkQueue
...
refs #4991
2017-03-29 10:17:03 +02:00
Michael Friedrich
a5556cbaae
Add log message for config/status dump end for Redis
...
refs #4991
2017-03-29 10:17:03 +02:00
Michael Friedrich
91b8decaac
Fix possible crash on startup status updates in Redis
...
refs #4991
2017-03-29 10:17:03 +02:00
Michael Friedrich
3310cc30ae
Fix hash value for empty custom attributes
...
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner
9de4c8bc58
Fix memory leak in RedisWriter::ExecuteQuery
...
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner
dac9775b93
Add COUNT parameter for SCAN
...
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner
28b2345a3b
Updated remaining queries to use ExecuteQuery()
...
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner
844e2bf68c
Replace existing queries with ExecuteQuery() calls
...
refs #4991
2017-03-29 10:17:03 +02:00
Michael Friedrich
fcd9e3666d
Implement config dump/update/delete publishing; fix runtime created object creation
...
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner
75bfd775b9
Implement RedisWriter::ExecuteQuery
...
refs #4991
2017-03-29 10:17:03 +02:00
Michael Friedrich
f29a82bcfe
Add properties and vars config checksums
...
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner
6178ca3886
Use GetHostService() instead of casts
...
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner
6b48a36192
Implement the db_index property for the RedisWriter class
...
fixes #5081
2017-03-29 10:17:03 +02:00
Gunnar Beutner
1bbdd082b0
Use transactions for the initial config and status updates
...
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner
c64d296edb
Make sure to use pretty-printed checksums in JSON blobs; remove semicolons
...
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner
2d9be77260
Clean up the code a bit
...
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner
0c25d14d0c
Fix crash in SHA1
...
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner
2773d93d40
Update log message
...
refs #4991
2017-03-29 10:17:03 +02:00
Michael Friedrich
0b466aabc0
Start working on checksum config dump
...
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner
50310fb5bc
Add missing arguments
...
refs #5087
2017-03-28 13:24:21 +02:00
Michael Friedrich
900b33dc5d
IDO: Do not terminate Icinga 2 if the database schema version does not match
...
Instead, log an error and continue.
fixes #4440
2017-03-28 10:16:07 +02:00
Gunnar Beutner
5d45c74be3
Improve function metadata by adding arguments
...
fixes #5087
2017-03-27 14:43:19 +02:00
Gunnar Beutner
95093bae3e
Move log message
...
refs #5094
2017-03-27 11:01:14 +02:00
Gunnar Beutner
a73c1580ca
Don't try to remove comments that were statically configured
...
fixes #5094
2017-03-27 10:46:35 +02:00
Gunnar Beutner
2d6434e96a
Improve log message in ConfigObjectUtility::DeleteObjectHelper
...
refs #5094
2017-03-27 10:46:35 +02:00
Michael Friedrich
bd5ff814f2
Review LogstashWriter feature implementation
...
refs #4054
2017-03-20 14:30:03 +01:00
Kai Goller
f5a971f5b0
Add LogstashWriter feature
...
This adds the UdpSocket class.
refs #4054
2017-03-20 14:30:03 +01:00
Michael Friedrich
06434b3e59
IDO: Fix where condition for downtime history updates
...
fixes #5080
2017-03-20 13:19:37 +01:00
Gunnar Beutner
94aeaa2e5c
Don't use raw pointers in boost::bind
...
refs #4991
2017-03-16 15:33:59 +01:00
Gunnar Beutner
dd7862f08a
Add missing freeReplyObject calls
...
refs #4991
2017-03-16 15:09:41 +01:00
Gunnar Beutner
62c1a64788
Merge DEL queries into one query
...
refs #4991
2017-03-16 15:09:41 +01:00
Gunnar Beutner
00eba25ad7
Add ASSERTs for the Redis queries
...
refs #4991
2017-03-16 15:09:41 +01:00
Gunnar Beutner
f862923dc7
Remove some log messages
...
refs #4991
2017-03-16 15:09:41 +01:00
Gunnar Beutner
18e6474f1e
Make sure all Redis tasks are executed on the WQ threads
...
refs #4991
2017-03-16 14:23:31 +01:00
Gunnar Beutner
3a5caf15eb
Remove redundant check
...
refs #4991
2017-03-16 13:58:35 +01:00
Gunnar Beutner
04be7a1f1e
Implement event handlers for config and status updates
...
fixes #5072
fixes #5073
refs #4991
2017-03-16 13:58:31 +01:00
Gunnar Beutner
df05e24d52
Fix attribute type filter
...
refs #4991
2017-03-16 13:58:28 +01:00
Gunnar Beutner
0eada26b04
Only export config objects to Redis
...
refs #4991
2017-03-16 13:58:23 +01:00
Michael Friedrich
e5c0295c9e
Redis: First attempt of a reconnect config dump
...
refs #5072
refs #4991
2017-03-16 13:58:18 +01:00
Gunnar Beutner
96b3c7d90b
Get rid of event IDs for Redis
...
fixes #5067
2017-03-15 15:10:58 +01:00
Gunnar Beutner
1cab2d7b16
Fix incorrect handling for SCAN results
...
fixes #5065
2017-03-15 14:55:41 +01:00
Gunnar Beutner
4da5f7d52c
Add another log message
...
refs #4991
2017-03-15 14:55:37 +01:00
Gunnar Beutner
a21da31ef6
Add missing free call
...
refs #4991
2017-03-15 14:55:19 +01:00
Gunnar Beutner
645e260f9b
Make function names available in the API
...
fixes #5064
2017-03-15 11:18:08 +01:00
Gunnar Beutner
39f1b4589a
Improve handling for missing start_time and finish_time values
...
fixes #5062
2017-03-15 10:41:08 +01:00
Gunnar Beutner
34c69d9556
Only send events to Redis when there is at least one subscriber
...
refs #4991
2017-03-14 15:19:02 +01:00
Gunnar Beutner
10ddcbe4d3
Implement support for expiring subscriptions
...
refs #4991
2017-03-14 15:19:02 +01:00
Michael Friedrich
3e98e3fb2c
Better error handling and fixes
...
refs #4991
2017-03-14 15:18:39 +01:00
Michael Friedrich
d3e3159e6b
Implement event subscriptions
...
refs #4991
2017-03-14 14:47:06 +01:00