]> granicus.if.org Git - icinga2/log
icinga2
6 years agoPublish when config_dump_in progress feature/redis
Jean Flach [Mon, 28 Jan 2019 14:19:10 +0000 (15:19 +0100)]
Publish when config_dump_in progress

6 years agoRevert "Merge branch 'bugfix/execute-quieries' into 'feature/redis'"
Jean Flach [Tue, 29 Jan 2019 14:44:49 +0000 (15:44 +0100)]
Revert "Merge branch 'bugfix/execute-quieries' into 'feature/redis'"

This reverts commit f6c1fc3b43b1895eb87c1657f3e3355bfe9ddaac, reversing
changes made to ad1d448bcdead76a2bd45171a6efcd700b1c23d0.

6 years agoHandle transaction vectors better
Jean Flach [Mon, 28 Jan 2019 15:08:31 +0000 (16:08 +0100)]
Handle transaction vectors better

6 years agoUse transaction for config dump
Jean Flach [Wed, 31 Oct 2018 14:39:27 +0000 (15:39 +0100)]
Use transaction for config dump

This wraps the config dump HMSETs into a transaction.

6 years agoLock before queueing multiple queries
Jean Flach [Mon, 28 Jan 2019 14:52:09 +0000 (15:52 +0100)]
Lock before queueing multiple queries

6 years agoFix Service's name
Jean Flach [Mon, 17 Dec 2018 12:47:50 +0000 (13:47 +0100)]
Fix Service's name

6 years agoAdd severity
Jean Flach [Fri, 7 Dec 2018 15:33:10 +0000 (16:33 +0100)]
Add severity

6 years agoRemove is_active_check
Jean Flach [Fri, 7 Dec 2018 09:58:57 +0000 (10:58 +0100)]
Remove is_active_check

6 years agoRemove unused variable
Jean Flach [Tue, 4 Dec 2018 12:05:29 +0000 (13:05 +0100)]
Remove unused variable

6 years agoOnly dump relevant object types
Jean Flach [Fri, 30 Nov 2018 16:01:42 +0000 (17:01 +0100)]
Only dump relevant object types

6 years agoUse ReflectionType instead of dynamic casts
Jean Flach [Fri, 30 Nov 2018 13:57:51 +0000 (14:57 +0100)]
Use ReflectionType instead of dynamic casts

6 years agoRewrite config dump
Jean Flach [Wed, 28 Nov 2018 10:30:56 +0000 (11:30 +0100)]
Rewrite config dump

6 years agoFix empty perf data strings
Jean Flach [Mon, 3 Dec 2018 16:23:40 +0000 (17:23 +0100)]
Fix empty perf data strings

6 years agoFix output and longOutput
Jean Flach [Mon, 3 Dec 2018 16:09:58 +0000 (17:09 +0100)]
Fix output and longOutput

6 years agoFix command line string
Jean Flach [Mon, 3 Dec 2018 15:31:06 +0000 (16:31 +0100)]
Fix command line string

6 years agoChange commandline and performancedata
Jean Flach [Mon, 3 Dec 2018 14:47:05 +0000 (15:47 +0100)]
Change commandline and performancedata

6 years agoFix that state does not get synced on acknowledgement removal
Noah Hilverling [Mon, 3 Dec 2018 13:23:07 +0000 (14:23 +0100)]
Fix that state does not get synced on acknowledgement removal

6 years agoRedis: Encode check command
Noah Hilverling [Mon, 3 Dec 2018 07:14:53 +0000 (08:14 +0100)]
Redis: Encode check command

6 years agoEncode perfdata
Jean Flach [Fri, 30 Nov 2018 14:40:31 +0000 (15:40 +0100)]
Encode perfdata

6 years agoRemove TODO
Jean Flach [Fri, 30 Nov 2018 09:14:39 +0000 (10:14 +0100)]
Remove TODO

6 years agoRemove dev debug log
Noah Hilverling [Fri, 30 Nov 2018 09:54:44 +0000 (10:54 +0100)]
Remove dev debug log

6 years agoAdd downtime handlers to state sync
Noah Hilverling [Fri, 30 Nov 2018 08:28:20 +0000 (09:28 +0100)]
Add downtime handlers to state sync

6 years agoStop json-encoding everything
Jean Flach [Thu, 29 Nov 2018 15:44:43 +0000 (16:44 +0100)]
Stop json-encoding everything

6 years agoFix timeout
Jean Flach [Thu, 29 Nov 2018 14:46:29 +0000 (15:46 +0100)]
Fix timeout

6 years agoExport last hard/soft state dummies
Jean Flach [Thu, 29 Nov 2018 14:42:46 +0000 (15:42 +0100)]
Export last hard/soft state dummies

6 years agoFix is_handled
Jean Flach [Tue, 27 Nov 2018 10:03:35 +0000 (11:03 +0100)]
Fix is_handled

6 years agoAdd host/service state sync to acknowledgement
Noah Hilverling [Mon, 26 Nov 2018 14:03:11 +0000 (15:03 +0100)]
Add host/service state sync to acknowledgement

6 years agoUpdate state sync
Jean Flach [Thu, 15 Nov 2018 16:04:03 +0000 (17:04 +0100)]
Update state sync

6 years agoUse OnStateChange instead of OnStateChanged
Noah Hilverling [Thu, 15 Nov 2018 14:51:56 +0000 (15:51 +0100)]
Use OnStateChange instead of OnStateChanged

6 years agoAdd additional fields
Jean Flach [Thu, 15 Nov 2018 14:47:28 +0000 (15:47 +0100)]
Add additional fields

6 years agoFix one unchecked checkresult access
Jean Flach [Thu, 15 Nov 2018 09:56:36 +0000 (10:56 +0100)]
Fix one unchecked checkresult access

6 years agoUpdate sate sync
Jean Flach [Thu, 15 Nov 2018 09:30:41 +0000 (10:30 +0100)]
Update sate sync

fix a crash, possibly two

6 years agoUpdate state sync
Jean Flach [Wed, 14 Nov 2018 15:42:48 +0000 (16:42 +0100)]
Update state sync

6 years agoClean up code
Jean Flach [Wed, 14 Nov 2018 13:41:11 +0000 (14:41 +0100)]
Clean up code

6 years agoRename state stream keys
Jean Flach [Wed, 14 Nov 2018 13:32:57 +0000 (14:32 +0100)]
Rename state stream keys

6 years agoUpdate state sync
Jean Flach [Wed, 14 Nov 2018 13:30:31 +0000 (14:30 +0100)]
Update state sync

Makes state serialization its own function to be used also when writing
out the initial state

6 years agoRemove debug log message
Jean Flach [Tue, 13 Nov 2018 15:43:50 +0000 (16:43 +0100)]
Remove debug log message

6 years agoUpdate state sync
Jean Flach [Tue, 13 Nov 2018 14:22:31 +0000 (15:22 +0100)]
Update state sync

6 years agoImplement minimal state sync
Jean Flach [Mon, 12 Nov 2018 16:46:35 +0000 (17:46 +0100)]
Implement minimal state sync

6 years agoRemove unnecessary parameter
Jean Flach [Mon, 12 Nov 2018 16:45:32 +0000 (17:45 +0100)]
Remove unnecessary parameter

6 years agoCheck if RedisConnection exists before checking connection
Jean Flach [Mon, 26 Nov 2018 12:34:05 +0000 (13:34 +0100)]
Check if RedisConnection exists before checking connection

6 years agoFix another RedisWriter crash
Jean Flach [Fri, 16 Nov 2018 14:42:36 +0000 (15:42 +0100)]
Fix another RedisWriter crash

Same as the other fix, this makes us lose events

6 years agoSwitch to debug build
Blerim Sheqa [Fri, 16 Nov 2018 09:49:36 +0000 (10:49 +0100)]
Switch to debug build

6 years agoFix segfault on startup
Jean Flach [Fri, 16 Nov 2018 09:15:00 +0000 (10:15 +0100)]
Fix segfault on startup

6 years agoHandle runtime config updates
Jean Flach [Thu, 15 Nov 2018 09:34:06 +0000 (10:34 +0100)]
Handle runtime config updates

fixes #37

6 years agoAdd missing include
Noah Hilverling [Fri, 9 Nov 2018 14:27:19 +0000 (15:27 +0100)]
Add missing include

6 years agoImprove event payload
Jean Flach [Tue, 30 Oct 2018 15:00:41 +0000 (16:00 +0100)]
Improve event payload

Adds host/service_id Acknowledgement events. AcknowledgementSet events also send the comment_id.

fixes #29

6 years agoPublish dump event
Jean Flach [Mon, 29 Oct 2018 15:56:24 +0000 (16:56 +0100)]
Publish dump event

fixes #34

6 years agoHandle icingadb- / icinga-type mismatches
Jean Flach [Mon, 29 Oct 2018 15:27:25 +0000 (16:27 +0100)]
Handle icingadb- / icinga-type mismatches

fixes servicedowntimes being written to hostdowntimes (and vice versa)

6 years agoFix icingadb specific type names
Jean Flach [Mon, 29 Oct 2018 12:48:15 +0000 (13:48 +0100)]
Fix icingadb specific type names

6 years agoAdd downtimes sync
Jean Flach [Fri, 26 Oct 2018 14:33:39 +0000 (16:33 +0200)]
Add downtimes sync

6 years agoCode formatting
Jean Flach [Fri, 26 Oct 2018 14:33:22 +0000 (16:33 +0200)]
Code formatting

6 years agoCode style
Jean Flach [Fri, 26 Oct 2018 13:01:05 +0000 (15:01 +0200)]
Code style

6 years agoAdd new connection handling
Jean Flach [Fri, 26 Oct 2018 12:07:07 +0000 (14:07 +0200)]
Add new connection handling

6 years agoAdd recursive callback to manage auth and db select
Jean Flach [Thu, 25 Oct 2018 15:48:32 +0000 (17:48 +0200)]
Add recursive callback to manage auth and db select

6 years agoAdd dummy host- and servicegroups
Blerim Sheqa [Fri, 26 Oct 2018 08:55:01 +0000 (10:55 +0200)]
Add dummy host- and servicegroups

6 years agoSimplify vector usage
Jean Flach [Tue, 23 Oct 2018 14:32:20 +0000 (16:32 +0200)]
Simplify vector usage

Also leak less memory ;)

6 years agoRewrite the RedisWriter
Jean Flach [Thu, 18 Oct 2018 12:39:59 +0000 (14:39 +0200)]
Rewrite the RedisWriter

There should be more atomic commits but the whole thing was a mess. This
commit changes the synchrounous Redis connection into an asynchronous
one in its own class RedisConnection.
The RedisConnection uses a Workqueue with commands to fire against the
Redis server. When a response is required a callback must be supplied,
refer to RedisWriter::RedisGet().

Known Issues:
- Authentication has no error handling and can break the connection
- Error handling in general is iffy due to the nature of the async redis
connection
- Getting a reply out of RedisConnection is not trivial
- HandleRW... sunt dracones

6 years agoUpdate GitlabCI config
Blerim Sheqa [Mon, 22 Oct 2018 14:56:38 +0000 (16:56 +0200)]
Update GitlabCI config

6 years agoAdd disconnect
Jean Flach [Wed, 17 Oct 2018 12:33:57 +0000 (14:33 +0200)]
Add disconnect

6 years agoAdd RedisConnection object
Jean Flach [Tue, 16 Oct 2018 12:21:07 +0000 (14:21 +0200)]
Add RedisConnection object

This works using an async Redis connection. Multiple connections are not
possible. The connection is fed from a workqueue filled with
RedisCommands in the way of a vector of strings.

6 years agoAllow supervisorctl commands within container
Blerim Sheqa [Fri, 12 Oct 2018 09:30:17 +0000 (11:30 +0200)]
Allow supervisorctl commands within container

6 years agoReformat code
Jean Flach [Mon, 1 Oct 2018 08:18:49 +0000 (10:18 +0200)]
Reformat code

CLion is now pretty close at what we use with Icinga, other changes do
make sense to me.

6 years agoSupport comments for icingadb
Jean Flach [Thu, 27 Sep 2018 14:54:52 +0000 (16:54 +0200)]
Support comments for icingadb

This splits comments into Host and Service comments

6 years agoFix elephant oversight
Alexander A. Klimov [Tue, 18 Sep 2018 13:47:44 +0000 (15:47 +0200)]
Fix elephant oversight

6 years agoStringify flat values
Jean Flach [Thu, 13 Sep 2018 13:40:27 +0000 (15:40 +0200)]
Stringify flat values

6 years agoUnify schema structure
Alexander A. Klimov [Wed, 12 Sep 2018 15:15:20 +0000 (17:15 +0200)]
Unify schema structure

refs #15

6 years agoRemove parent_checksum
Jean Flach [Fri, 10 Aug 2018 11:37:42 +0000 (13:37 +0200)]
Remove parent_checksum

parent_checksum is always the first element in all_parents_checksums

6 years agoRename command_checksums
Jean Flach [Thu, 9 Aug 2018 12:28:19 +0000 (14:28 +0200)]
Rename command_checksums

6 years agoignore user/usergroup for property checksum
Jean Flach [Fri, 10 Aug 2018 08:22:30 +0000 (10:22 +0200)]
ignore user/usergroup for property checksum

6 years agoRedisWriter: dump missing checksums for notifications
Alexander A. Klimov [Thu, 9 Aug 2018 08:49:36 +0000 (10:49 +0200)]
RedisWriter: dump missing checksums for notifications

refs #18

6 years agoRedisWriter: dump all_parents_checksum and all_parents_checksums for zones
Alexander A. Klimov [Wed, 8 Aug 2018 12:26:41 +0000 (14:26 +0200)]
RedisWriter: dump all_parents_checksum and all_parents_checksums for zones

6 years agoGitLab CI: preserve everything created by the Icinga 2 build
Alexander A. Klimov [Thu, 9 Aug 2018 14:45:26 +0000 (16:45 +0200)]
GitLab CI: preserve everything created by the Icinga 2 build

6 years agoGitLab CI: upgrade Boost
Alexander A. Klimov [Thu, 9 Aug 2018 13:55:28 +0000 (15:55 +0200)]
GitLab CI: upgrade Boost

6 years agoRedisWriter: dump period_checksum for users
Alexander A. Klimov [Tue, 7 Aug 2018 12:16:09 +0000 (14:16 +0200)]
RedisWriter: dump period_checksum for users

6 years agoOnly use the type for commands in the object identifier checksum
Michael Friedrich [Mon, 6 Aug 2018 08:55:24 +0000 (10:55 +0200)]
Only use the type for commands in the object identifier checksum

6 years agoSync ranges_checksum for timeperiods
Jean Flach [Thu, 26 Jul 2018 13:55:50 +0000 (15:55 +0200)]
Sync ranges_checksum for timeperiods

Signed-off-by: Michael Friedrich <michael.friedrich@icinga.com>
6 years agoRedisWriter: make config object identifiers type-aware
Alexander A. Klimov [Wed, 25 Jul 2018 08:36:33 +0000 (10:36 +0200)]
RedisWriter: make config object identifiers type-aware

SHA1(PackObject([Environment, Type, __name]))

6 years agoRedisWriter: compute checksums of command arguments and env vars
Alexander A. Klimov [Thu, 26 Jul 2018 11:46:36 +0000 (13:46 +0200)]
RedisWriter: compute checksums of command arguments and env vars

refs #14

6 years agoRevert unneccessary dynamic_pointer_cast
Alexander A. Klimov [Mon, 23 Jul 2018 15:52:29 +0000 (17:52 +0200)]
Revert unneccessary dynamic_pointer_cast

6 years agoRedisWriter: dump zone_checksum for endpoints
Alexander A. Klimov [Thu, 19 Jul 2018 16:34:40 +0000 (18:34 +0200)]
RedisWriter: dump zone_checksum for endpoints

refs #11

6 years agoSimplify host_checksum
Michael Friedrich [Tue, 10 Jul 2018 14:35:32 +0000 (16:35 +0200)]
Simplify host_checksum

6 years agoExport usergroup(s)_checksum(s)
Jean Flach [Thu, 12 Jul 2018 13:05:10 +0000 (15:05 +0200)]
Export usergroup(s)_checksum(s)

Warning: ugly code

6 years agoGitLab CI: use existing Python script
Alexander A. Klimov [Wed, 11 Jul 2018 09:33:19 +0000 (11:33 +0200)]
GitLab CI: use existing Python script

6 years agoAdd 'parent_checksum' for zone objects
Michael Friedrich [Tue, 10 Jul 2018 13:16:04 +0000 (15:16 +0200)]
Add 'parent_checksum' for zone objects

6 years agoAdd command_endpoint, event/check_command, action/notes_url, icon_image checksums...
Michael Friedrich [Tue, 10 Jul 2018 13:15:57 +0000 (15:15 +0200)]
Add command_endpoint, event/check_command, action/notes_url, icon_image checksums for host/service objects

6 years agoAdd 'host_checksum' for services
Michael Friedrich [Tue, 10 Jul 2018 13:14:28 +0000 (15:14 +0200)]
Add 'host_checksum' for services

6 years agoDrop obsolete delete query on config dump
Michael Friedrich [Tue, 10 Jul 2018 09:53:05 +0000 (11:53 +0200)]
Drop obsolete delete query on config dump

6 years agoUpdate Redis prefix namespaces and move their declaration into the class
Michael Friedrich [Tue, 10 Jul 2018 09:09:37 +0000 (11:09 +0200)]
Update Redis prefix namespaces and move their declaration into the class

icinga:config:object:<type>:<sha1>
icinga:config:checksum:<type> <sha1>
icinga:config:customvar:<type> <sha1>

icinga:status:object:<type>:<sha1>

This avoids multiple definitions all over the code. Maybe we want
to make the schema configurable at some point.

6 years agoGitLab CI: adjust Docker image name
Alexander A. Klimov [Tue, 10 Jul 2018 08:31:20 +0000 (10:31 +0200)]
GitLab CI: adjust Docker image name

6 years agoGitLab CI: build Docker image for testing
Alexander A. Klimov [Thu, 5 Jul 2018 15:48:23 +0000 (17:48 +0200)]
GitLab CI: build Docker image for testing

fixes #1

6 years agoFix missing object locks
Michael Friedrich [Wed, 4 Jul 2018 14:44:44 +0000 (16:44 +0200)]
Fix missing object locks

6 years agoRedisWriter: dump custom vars verbosely
Alexander A. Klimov [Tue, 3 Jul 2018 13:52:35 +0000 (15:52 +0200)]
RedisWriter: dump custom vars verbosely

6 years agoSend zone_checksum globally, if 'zone' attribute is set
Michael Friedrich [Tue, 3 Jul 2018 12:57:09 +0000 (14:57 +0200)]
Send zone_checksum globally, if 'zone' attribute is set

6 years agoOnly sync zone_checksum when object in zone
Jean Flach [Tue, 3 Jul 2018 11:30:10 +0000 (13:30 +0200)]
Only sync zone_checksum when object in zone

6 years agoAdd zone checksum for redis to checkables
Jean Flach [Mon, 2 Jul 2018 07:37:23 +0000 (09:37 +0200)]
Add zone checksum for redis to checkables

6 years agoFix error handling for GetSubscriptionTypes()
Michael Friedrich [Thu, 28 Jun 2018 15:38:32 +0000 (17:38 +0200)]
Fix error handling for GetSubscriptionTypes()

6 years agoRedisWriter: dump endpoints' zones' identifiers (zone_checksum)
Alexander A. Klimov [Mon, 25 Jun 2018 15:13:13 +0000 (17:13 +0200)]
RedisWriter: dump endpoints' zones' identifiers (zone_checksum)

6 years agoRedisWriter: fix checksums of disappeared config objects not being deleted
Alexander A. Klimov [Mon, 25 Jun 2018 07:58:08 +0000 (09:58 +0200)]
RedisWriter: fix checksums of disappeared config objects not being deleted

6 years agoRedisWriter: fix disappeared config objects not being deleted
Alexander A. Klimov [Fri, 22 Jun 2018 15:57:36 +0000 (17:57 +0200)]
RedisWriter: fix disappeared config objects not being deleted