Michael Friedrich
211a07f49a
Add 'ttl' support for check result freshness via REST API
...
The `process-check-result` action can now optionally set the
`ttl` parameter. This overrules the configured freshness
check (check_interval).
The main idea behind this is to allow the external sender
to specify when the next check result is coming in.
For example, a backup script which should be run every
24h can specify the exact expected next check result.
The addition to the CheckResult class is necessary to
forward the check result throughout the cluster and
calculate the `next_check` value on each node. This
allows us to send in a check result on a satellite,
and the master determines the freshness and possible
notifications/state changes for Icinga Web 2.
2018-01-15 13:54:11 +01:00
Michael Friedrich
1d0fd5be11
Merge pull request #5903 from Icinga/fix/cleanup-compatutility
...
Cleanup CompatUtility class and features
2018-01-15 13:51:07 +01:00
Michael Friedrich
50106057bf
Remove obsolete locks in Livestatus; apply style guide to DB IDO
2018-01-15 13:39:34 +01:00
Michael Friedrich
403ab5c357
Eliminate time(NULL) in StatusDataWriter
2018-01-15 13:39:34 +01:00
Michael Friedrich
ef7c80959d
More cleanup for compat filters in DB IDO
2018-01-15 13:39:34 +01:00
Michael Friedrich
4da3a50711
Clean up DB IDO events code
2018-01-15 13:39:34 +01:00
Michael Friedrich
636cf62d3a
DB IDO: Clean up code and group CompatUtility calls
2018-01-15 13:39:34 +01:00
Michael Friedrich
d672df3f2c
DB IDO: Don't send empty columns in queries
2018-01-15 13:39:34 +01:00
Michael Friedrich
e5462ea3d1
DB IDO: Remove check_command_args column
...
The populated value is not entirely correct, and pulls in lots
of compat code.
2018-01-15 13:39:34 +01:00
Michael Friedrich
9de233630a
Move CompatUtility::GetCheckableInNotificationPeriod() logic into Livestatus feature
2018-01-15 13:39:34 +01:00
Michael Friedrich
7a012c062a
Move CompatUtility::GetHostStateString() logic into DB IDO and CompatLogger features
2018-01-15 13:39:34 +01:00
Michael Friedrich
5222f7d058
GelfWriter should write the host notification output
...
No idea why there was a hardcoded unreachable message inside.
2018-01-15 13:39:34 +01:00
Michael Friedrich
915d0417c9
Move CompatUtility::GetHostCurrentState() logic into DB IDO and StatusData features
2018-01-15 13:39:34 +01:00
Michael Friedrich
48516560bc
Move the IDO specific compat notification filter logic into the feature
2018-01-15 13:39:34 +01:00
Michael Friedrich
d373b03907
Drop CompatUtility::GetCheckable*Interval() and hardcode their minute representation in compat features
2018-01-15 13:39:34 +01:00
Michael Friedrich
fb76287d39
Clean header includes in CompatUtility class
2018-01-15 13:39:34 +01:00
Michael Friedrich
1473957bc2
Add inventory as comments where the left-over functions are actually used.
2018-01-15 13:39:34 +01:00
Michael Friedrich
e3a899a9ac
Drop CompatUtility::GetCheckableCheckPeriod()
2018-01-15 13:39:34 +01:00
Michael Friedrich
ce8bfdfa5a
Move CompatUtility::GetCheckableInCheckPeriod() into Livestatus feature
2018-01-15 13:39:34 +01:00
Michael Friedrich
15e3524e42
Move notification options wrapper into StatusDataWriter
...
That's the only location which requires the old mapping.
2018-01-15 13:39:34 +01:00
Michael Friedrich
87b99c17b5
Drop CompatUtility::GetCheckResultPerfdata()
2018-01-15 13:39:34 +01:00
Michael Friedrich
906c1accaa
Move more compatibility mappings into DB IDO
2018-01-15 13:39:34 +01:00
Michael Friedrich
2478c4d053
Move ConvertTimestamp functionality into DB IDO
...
This is the only place where the timestamp is split into
sec and usec.
2018-01-15 13:39:34 +01:00
Michael Friedrich
f2fe165ccb
Drop useless CompatUtility::GetCustomAttributeConfig() wrapper
2018-01-15 13:39:34 +01:00
Michael Friedrich
b5f5d167dc
Drop dead CompatUtility::GetCustomAttributeConfig
2018-01-15 13:39:34 +01:00
Michael Friedrich
cbea0c13f5
Drop Freshness wrappers from CompatUtility class
2018-01-15 13:39:34 +01:00
Michael Friedrich
db6ed405e4
Remove more redundant wrappers from CompatUtility class
2018-01-15 13:39:34 +01:00
Michael Friedrich
5466197d29
Drop CompatUtility::*Command helpers
2018-01-15 13:39:34 +01:00
Michael Friedrich
b4af0971af
Drop dead code in Livestatus feature
2018-01-15 13:39:34 +01:00
Michael Friedrich
2d1f772a6e
Replace CompatUtility's enabled wrappers with native implementation getters
...
Many conversions were not necessary, or could be dealt inside the actual
feature. libcompat and liblivestatus can take care about such specifics
on their own, lib_db_ido doesn't need boolean conversion in fields, that
is done inside the db driver.
2018-01-15 13:39:34 +01:00
Michael Friedrich
334f633b0a
Drop CompatUtility::GetCheckableHasBeenChecked() and use Checkable::HasBeenChecked()
2018-01-15 13:39:34 +01:00
Michael Friedrich
3847e37df1
Drop CompatUtility::GetCheckableAcknowledgementType()
...
This already returns an integer.
2018-01-15 13:39:34 +01:00
Michael Friedrich
7bf2e07032
Move CompatUtility::GetCheckableProblemHasBeenAcknowledged() into feature specific dumps
2018-01-15 13:39:34 +01:00
Michael Friedrich
92c565d744
Move CompatUtility::GetCheckableCheckType() into IDO/Livestatus features
...
It is just boolean mapping to numbers, each modules does that in a sort of different way.
DB IDO automatically transforms boolean to numbers.
Livestatus would return JSON which keeps true booleans, but requires a number (just a guess,
there is no spec for this message format).
2018-01-15 13:39:34 +01:00
Michael Friedrich
70af1a3545
Move CompatUtility::GetHostAlias into DB IDO host object method
...
This is the only place where this mapping is used.
2018-01-15 13:39:34 +01:00
Gunnar Beutner
ab1a2bffcd
Merge pull request #5940 from Icinga/fix/chocolatey
...
Remove deprecated Chocolatey functions
2018-01-15 11:36:54 +01:00
Gunnar Beutner
74d5137dde
Implement AppLocal deployment support for UCRT
...
refs #5856
2018-01-15 11:31:35 +01:00
Gunnar Beutner
fc7757ee25
Merge pull request #5888 from Icinga/feature/mariadbclient
...
FindMySQL: Support mariadbclient implementation
2018-01-15 10:04:22 +01:00
Gunnar Beutner
c7f060d42c
Merge pull request #5972 from cstegm/patch-2
...
Update 08-advanced-topics.md
2018-01-12 21:37:41 +01:00
Michael Friedrich
dffe86a292
Merge pull request #5974 from Icinga/fix/icingachecktask-buildfix
...
Fix non-unity builds with the icinga check
2018-01-12 11:39:50 +01:00
Michael Friedrich
6c68ef0955
Fix non-unity builds with the icinga check
...
refs #5958
2018-01-12 11:04:54 +01:00
cstegm
b72bdfe5af
Update 08-advanced-topics.md
...
fixed typo
2018-01-11 16:48:40 +01:00
Michael Friedrich
92a279c234
Merge pull request #5971 from Icinga/feature/remove-demo
...
Remove libdemo and libhello
2018-01-11 13:52:01 +01:00
Michael Friedrich
36a10cb65d
Merge pull request #5970 from Icinga/feature/stack-allocate-configitembuilder
...
Allocate ConfigItemBuilder objects on the stack
2018-01-11 13:50:23 +01:00
Michael Friedrich
01aee7954e
Merge pull request #5969 from Icinga/feature/wq-stats-mutex
...
Remove the WorkQueue::m_StatsMutex instance variable
2018-01-11 13:38:40 +01:00
Michael Friedrich
de5f2b01c4
Merge pull request #5968 from Icinga/feature/ringbuffer-mutex
...
Update the RingBuffer class to use a regular mutex instead of ObjectLock
2018-01-11 13:37:35 +01:00
Michael Friedrich
47bc4e6b5c
Merge pull request #5967 from Icinga/feature/lazy-accessors
...
Avoid accessing attributes for validators where not necessary
2018-01-11 13:36:29 +01:00
Gunnar Beutner
0354f34e5a
Remove libdemo and libhello
2018-01-11 13:29:11 +01:00
Gunnar Beutner
a36e847c6c
Allocate ConfigItemBuilder objects on the stack
2018-01-11 10:52:26 +01:00
Gunnar Beutner
e8876f3b22
Remove the WorkQueue::m_StatsMutex instance variable
2018-01-11 10:48:19 +01:00