Michael Friedrich
|
87248f703c
|
Merge pull request #7632 from Icinga/feature/dsl-get-templates
DSL: Add get_template{,s}
|
2019-11-15 14:42:48 +01:00 |
Alexander A. Klimov
|
5c347ef7bd
|
DSL: introduce x?y:z
|
2019-11-15 13:38:01 +01:00 |
Michael Friedrich
|
b3eb9c6a07
|
Merge pull request #7439 from Icinga/feature/timeperiod-seconds
LegacyTimePeriod: support specifying seconds
|
2019-11-15 13:02:05 +01:00 |
Michael Friedrich
|
b1787883f7
|
Merge pull request #7535 from tigercomputing/Icinga/feature/config-stage-activate-parameter
API /v1/config/stages 'activate' parameter
|
2019-11-15 12:58:03 +01:00 |
Michael Friedrich
|
38080405df
|
Merge pull request #7528 from Icinga/bugfix/api-put-error-handling
API: Handle permission exceptions soon enough, returning 404
|
2019-11-15 11:53:59 +01:00 |
Noah Hilverling
|
b6db34747a
|
IcingaDB: Remove redundant last_{hard/soft}_state
|
2019-11-14 10:57:11 +01:00 |
Noah Hilverling
|
fa892b613d
|
Merge pull request #7608 from Icinga/bugfix/icinga-history-stream-downtime
IcingaDB: avoid duplicates in icinga:history:stream:downtime
|
2019-11-12 11:40:45 +01:00 |
Noah Hilverling
|
4ea236aa64
|
IcingaDB: Fix state on unchecked objects
|
2019-11-11 15:28:16 +01:00 |
Michael Friedrich
|
1cda421bad
|
DSL: Add get_template{,s}
Signed-off-by: Michael Friedrich <michael.friedrich@icinga.com>
|
2019-11-08 11:13:26 +01:00 |
Alexander A. Klimov
|
1e2739aed6
|
IcingaDB::NotificationSentToAllUsersHandler(): copy set once, not N*(1+M) times
|
2019-11-07 17:23:48 +01:00 |
Noah Hilverling
|
42f959874e
|
IcingaDB: Add user notification history
|
2019-11-07 15:57:31 +01:00 |
Alexander A. Klimov
|
592872a6c3
|
IcingaDB: avoid duplicates in icinga:history:stream:downtime
|
2019-11-06 10:41:54 +01:00 |
Alexander A. Klimov
|
4e8584ee9e
|
IcingaDB: correct icinga:history:stream:state#{,last_}soft_state and icinga:history:stream:notification#state for hosts
|
2019-11-04 16:40:04 +01:00 |
Alexander A. Klimov
|
6c7a9eb651
|
IcingaDB#SendStatusUpdate(): add icinga:history:stream:state#previous_soft_state
|
2019-11-04 12:59:57 +01:00 |
Michael Friedrich
|
9d9804d50a
|
Styleguide for IcingaDB
|
2019-11-02 18:01:31 +01:00 |
Michael Friedrich
|
631a4ee9fa
|
Fix header guards
|
2019-11-02 17:24:34 +01:00 |
Michael Friedrich
|
904f2ce7d4
|
IcingaDB: Silence some developer logging
|
2019-11-02 15:47:51 +01:00 |
Michael Friedrich
|
36d18ed23a
|
IcingaDB: Log where we are connecting to
|
2019-11-02 15:47:46 +01:00 |
Michael Friedrich
|
9235246985
|
Fix rebase against master branch
|
2019-11-02 14:18:20 +01:00 |
Michael Friedrich
|
61d9130dd0
|
Fix Copyright headers
|
2019-11-02 14:00:24 +01:00 |
Michael Friedrich
|
f9b3e88bbb
|
Fix non-unity builds
|
2019-11-02 14:00:24 +01:00 |
Noah Hilverling
|
b65e5f5547
|
IcingaDB/Comment: Add is_sticky
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
071a1489aa
|
PUBLISH to icinga:stats with high priority
refs #57
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
67909210a6
|
RedisConnection: introduce high-priority queue
refs #57
|
2019-11-02 14:00:24 +01:00 |
Noah Hilverling
|
91ecfc35cf
|
Ensure that execution_time never goes below 0
|
2019-11-02 14:00:24 +01:00 |
Noah Hilverling
|
4e43c766ca
|
Improve CommentHistory
|
2019-11-02 14:00:24 +01:00 |
Noah Hilverling
|
6a7e83a5e6
|
Improve Downtime & DowntimeHistory
|
2019-11-02 14:00:24 +01:00 |
Noah Hilverling
|
0aa885573d
|
Fix notification history not setting text if notification is triggered by checkresult
|
2019-11-02 14:00:24 +01:00 |
Noah Hilverling
|
4a43dd1ce6
|
Rename event_type state to state_change
|
2019-11-02 14:00:24 +01:00 |
Noah Hilverling
|
5eb1c42a28
|
History: Use same names for event_time and event_type
|
2019-11-02 14:00:24 +01:00 |
Alexander Aleksandrovič Klimov
|
04dfbb07ce
|
Rename ICINGA2_WITH_REDIS to ICINGA2_WITH_ICINGADB
|
2019-11-02 14:00:24 +01:00 |
Alexander Aleksandrovič Klimov
|
13ab7eb609
|
Rename redis to icingadb
|
2019-11-02 14:00:24 +01:00 |
Alexander Aleksandrovič Klimov
|
f51454af65
|
git ls-files -z |xargs -0 perl -pi -e 's/RedisWriter/IcingaDB/g'
|
2019-11-02 14:00:24 +01:00 |
Alexander Aleksandrovič Klimov
|
c7e9997294
|
RedisWriter#SerializeState(): don't stringify previous_hard_state
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
617a4a2e92
|
RedisWriter: drop icinga:history:stream:notification#{,long_}output and add #{author,text}
|
2019-11-02 14:00:24 +01:00 |
Alexander Aleksandrovič Klimov
|
badcb5662c
|
RedisWriter: add icinga:state:stream:*#previous_hard_state
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
746a48e2ca
|
RedisWriter: add icinga:history:stream:{state,notification}#previous_hard_state
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
4a7a8cb6f8
|
RedisWriter: add icinga:history:stream:*#endpoint_id
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
8613365f1c
|
RedisWriter: add icinga:{state:stream:*,history:stream:*:state}#check_source
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
f314489d23
|
Merge host and service histories
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
e6043e908a
|
RedisWriter: adjust icinga:history:stream:*:flapping schema
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
0510e0cad0
|
Replace duration with flexible_duration
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
c89f354a84
|
Replace is_fixed with is_flexible
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
9d0e402d92
|
RedisWriter#SendStartedDowntime(): send also a config update
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
747521fa84
|
RedisWriter#SendStatusUpdate(): handle pending checkable
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
82898b31ae
|
RedisWriter: fix missing m_Rcon!=null checks
|
2019-11-02 14:00:24 +01:00 |
Noah Hilverling
|
52fb723d91
|
RedisWriter: Do not split up comments/downtimes into host/service keys
|
2019-11-02 14:00:24 +01:00 |
Noah Hilverling
|
846f327054
|
RedisWriter: Use TimestampToMilliseconds() instead of multiplying inline
|
2019-11-02 14:00:24 +01:00 |
Noah Hilverling
|
042ed8b9e9
|
RedisWriter: Add downtime schedule history event
|
2019-11-02 14:00:24 +01:00 |
Noah Hilverling
|
6f0822cbe8
|
RedisWriter: Use ms instead of seconds for timestamps
|
2019-11-02 14:00:24 +01:00 |
Noah Hilverling
|
5edf3623c5
|
RedisWriter-History: Add event_id and event_type to history entries
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
fb6d31fcde
|
RedisWriter: populate icinga:history:stream:*:flapping
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
81873248e1
|
RedisWriter: populate icinga:history:stream:*:comment
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
6c536c97e8
|
RedisWriter: populate icinga:history:stream:*:downtime
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
feeae9d518
|
RedisWriter: populate icinga:history:stream:*:state
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
d0165773d2
|
RedisWriter: populate icinga:history:stream:*:notification
|
2019-11-02 14:00:24 +01:00 |
Noah Hilverling
|
33bdc8b5c3
|
RedisWriter: Rename check_period to check_timeperiod
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
21a900cd9d
|
RedisWriter#SerializeState(): serialize also Checkable#next_update
refs #54
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
9a3ab8c547
|
Adjust IoEngine usage
|
2019-11-02 14:00:24 +01:00 |
Noah Hilverling
|
9f077e8216
|
RedisWriter: Streamline JSON key names
|
2019-11-02 14:00:24 +01:00 |
Noah Hilverling
|
1566c4f9ac
|
Fix runtime update of state not being published
|
2019-11-02 14:00:24 +01:00 |
Noah Hilverling
|
07515d4446
|
Fix RedisWriter not clearing "icinga:config:state:*" keys on initial dump
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
b0cd306b61
|
RedisWriter#InsertObjectDependencies(): PUBLISH icinga:config:update ... for all dependencies
|
2019-11-02 14:00:24 +01:00 |
Noah Hilverling
|
322f3fbb0d
|
RedisWriter: Fix state sync prefix
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
fe49141490
|
RedisWriter#SendStatusUpdate(): ensure valid UTF-8 output
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
d9ff921934
|
RedisWriter: publish the current config dump state via icinga:dump
refs #53
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
1d3109458d
|
RedisConnection: merge write queues
refs #50
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
3b61b3d37a
|
RedisConnection: log messages
refs #50
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
430c769371
|
RedisConnection: handle errors as expected
refs #50
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
06d88477bd
|
RedisConnection: forward I/O errors to async-ly waiting requestors
refs #50
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
fa5c9ac985
|
RedisConnection: don't read the response before the request has been written
refs #50
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
132b2dcb77
|
Get rid of hiredis
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
a5971df039
|
RedisConnection: I/O the Redis protocol by itself (PoC)
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
752c5998df
|
Prefer vector#emplace_back over #push_back
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
e60ca9bca9
|
RedisWriter#InsertObjectDependencies(): don't change config objects' attributes in-place
refs #52
|
2019-11-02 14:00:24 +01:00 |
Noah Hilverling
|
d5d3f3e60c
|
Remove unused function CollectScalarVars()
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
53d04cc4e8
|
RedisWriter#RedisGet(): std::move() query
refs #49
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
fb98d3edef
|
RedisConnection#ExecuteQuer{y,ies}(): std::move() queries
refs #49
|
2019-11-02 14:00:24 +01:00 |
Alexander A. Klimov
|
bb333b535b
|
RedisConnection#ExecuteQueries(): fire all queries at once
refs #49
|
2019-11-02 14:00:23 +01:00 |
Alexander A. Klimov
|
74eccf60f2
|
Fix memory leak
|
2019-11-02 14:00:23 +01:00 |
Noah Hilverling
|
11d5415193
|
RedisWriter: Add depth attribute to zone
|
2019-11-02 14:00:23 +01:00 |
Noah Hilverling
|
8421a98a2c
|
Fix command arguments and envvars
|
2019-11-02 14:00:23 +01:00 |
Noah Hilverling
|
9308acfcd5
|
RedisWriter: Json encode command field command
|
2019-11-02 14:00:23 +01:00 |
Noah Hilverling
|
e41bcbc81c
|
Do not store timeperiod range in separate key (timerange)
|
2019-11-02 14:00:23 +01:00 |
Noah Hilverling
|
74b6839704
|
Add JsonEncode to customvar value
|
2019-11-02 14:00:23 +01:00 |
Noah Hilverling
|
fc718d99a7
|
Rename :overwrite: keys to :override:
|
2019-11-02 14:00:23 +01:00 |
Noah Hilverling
|
0bfdaccc7a
|
Split up redis arrays into single entries
|
2019-11-02 14:00:23 +01:00 |
Alexander A. Klimov
|
6fd6f74b0f
|
Fix missing ( )
|
2019-11-02 14:00:23 +01:00 |
Alexander A. Klimov
|
07823c4b90
|
RedisWriter#CreateConfigUpdate(): don't require prepared commands
|
2019-11-02 14:00:23 +01:00 |
Alexander A. Klimov
|
1d126b66e9
|
RedisWriter#InsertObjectDependencies(): reduce memory allocations
|
2019-11-02 14:00:23 +01:00 |
Alexander A. Klimov
|
def3c7df32
|
RedisWriter#CreateConfigUpdate(): reduce memory allocations
|
2019-11-02 14:00:23 +01:00 |
Alexander A. Klimov
|
c24092a64e
|
RedisWriter#GenerateHmsetStatements(): reduce memory allocations
|
2019-11-02 14:00:23 +01:00 |
Alexander A. Klimov
|
23448b0322
|
Make RedisWriter#ChunkObjects()'s result type more explicit
|
2019-11-02 14:00:23 +01:00 |
Alexander A. Klimov
|
0534141aaf
|
Remove redundand vector#reserve()
|
2019-11-02 14:00:23 +01:00 |
Alexander A. Klimov
|
7d0fc91c1b
|
RedisWriter#GetTypeObjectKeys(): move() the result
|
2019-11-02 14:00:23 +01:00 |
Noah Hilverling
|
13295acb72
|
RedisWriter: Write objects of same type in parallel
|
2019-11-02 14:00:23 +01:00 |
Noah Hilverling
|
68c88b3edf
|
Implement new Redis schema
WIP
WIP
|
2019-11-02 14:00:23 +01:00 |
Alexander A. Klimov
|
1dcec6e77a
|
RedisConnection#SendMessageInternal(): lock only while actually using shared objects
|
2019-11-02 14:00:23 +01:00 |
Alexander A. Klimov
|
50594ec1c8
|
Replace std::bind() with lambdas
refs #48
|
2019-11-02 14:00:23 +01:00 |
Noah Hilverling
|
a6ec60a992
|
RedisWriter: Use IcingaApplication environment
|
2019-11-02 14:00:23 +01:00 |
Noah Hilverling
|
c5b0884e44
|
RedisWriter: Heartbeat should occur every second
|
2019-11-02 14:00:23 +01:00 |
Alexander A. Klimov
|
f601ba51e0
|
Revert "Eventqueue: Remove unused code"
This reverts commit a7873da89d .
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
23099904c0
|
Publish when config_dump_in progress
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
7890c37357
|
Revert "Merge branch 'bugfix/execute-quieries' into 'feature/redis'"
This reverts commit f6c1fc3b43b1895eb87c1657f3e3355bfe9ddaac, reversing
changes made to ad1d448bcdead76a2bd45171a6efcd700b1c23d0.
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
0ad008f465
|
Handle transaction vectors better
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
b95e39952e
|
Use transaction for config dump
This wraps the config dump HMSETs into a transaction.
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
d2dc0047a3
|
Lock before queueing multiple queries
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
03a61347cd
|
Fix Service's name
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
037357aea5
|
Add severity
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
57b9fc94c3
|
Remove is_active_check
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
6705158d31
|
Remove unused variable
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
accadb5dfb
|
Only dump relevant object types
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
dc5dc46364
|
Use ReflectionType instead of dynamic casts
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
5cfd3c1ab0
|
Rewrite config dump
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
e90fb43b91
|
Fix empty perf data strings
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
446796dadb
|
Fix output and longOutput
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
50aa0eb1d3
|
Fix command line string
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
553f6f6ba9
|
Change commandline and performancedata
|
2019-11-02 14:00:23 +01:00 |
Noah Hilverling
|
3439ea755f
|
Fix that state does not get synced on acknowledgement removal
|
2019-11-02 14:00:23 +01:00 |
Noah Hilverling
|
992727707d
|
Redis: Encode check command
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
08bfbbc070
|
Encode perfdata
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
933de15c36
|
Remove TODO
|
2019-11-02 14:00:23 +01:00 |
Noah Hilverling
|
3fb3e8bb6d
|
Remove dev debug log
|
2019-11-02 14:00:23 +01:00 |
Noah Hilverling
|
2202bde56c
|
Add downtime handlers to state sync
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
af05a354fa
|
Stop json-encoding everything
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
d104eb4ac1
|
Fix timeout
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
6ce4612cd7
|
Export last hard/soft state dummies
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
e2caa47f18
|
Fix is_handled
|
2019-11-02 14:00:23 +01:00 |
Noah Hilverling
|
328adf1fc4
|
Add host/service state sync to acknowledgement
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
916bfd20fb
|
Update state sync
|
2019-11-02 14:00:23 +01:00 |
Noah Hilverling
|
9aec47efb3
|
Use OnStateChange instead of OnStateChanged
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
02ecc3e445
|
Add additional fields
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
a7e615fbc0
|
Fix one unchecked checkresult access
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
9b9cf6d5b0
|
Update sate sync
fix a crash, possibly two
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
d8737b238a
|
Update state sync
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
223ca6c6a0
|
Clean up code
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
f68ad634b2
|
Rename state stream keys
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
3def496b62
|
Update state sync
Makes state serialization its own function to be used also when writing
out the initial state
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
fcb3752973
|
Remove debug log message
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
3da4cef1e6
|
Update state sync
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
2215e9e16f
|
Implement minimal state sync
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
c825a3f4b5
|
Remove unnecessary parameter
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
5f64d809d7
|
Check if RedisConnection exists before checking connection
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
a056e14834
|
Fix another RedisWriter crash
Same as the other fix, this makes us lose events
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
eec1928a0b
|
Fix segfault on startup
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
67208c4f07
|
Handle runtime config updates
fixes #37
|
2019-11-02 14:00:23 +01:00 |
Noah Hilverling
|
f4145579ca
|
Add missing include
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
47905a25e8
|
Improve event payload
Adds host/service_id Acknowledgement events. AcknowledgementSet events also send the comment_id.
fixes #29
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
e889de966e
|
Publish dump event
fixes #34
|
2019-11-02 14:00:23 +01:00 |
Jean Flach
|
5e3e114a16
|
Handle icingadb- / icinga-type mismatches
fixes servicedowntimes being written to hostdowntimes (and vice versa)
|
2019-11-02 14:00:23 +01:00 |