Commit Graph

173 Commits

Author SHA1 Message Date
Thomas Gelf 0d930efb46 IcingaObject: add new resolving helper methods
This for example allows to get a single inherited var and their origin
2016-10-13 21:25:03 +00:00
Thomas Gelf c1afda4392 IcingaObject: do not fail when rendering objects...
...without imports support

fixes #12618
2016-10-13 11:11:35 +00:00
Thomas Gelf e99568fffc DirectorObjectForm: add unique error message...
...without adding an error in case we detect a loop. Also improve
resolve cache invalidation and clean up old imports-related code

refs #11803
2016-10-12 15:23:54 +00:00
Thomas Gelf 05f991c585 IcingaObject: no loop detection on unstored...
...objects

refs #11803
2016-10-12 14:26:44 +00:00
Thomas Gelf 7993724dcb IcingaTemplateResolver: detect and throw nesting..
...errors

fixes #11803
2016-10-12 14:16:19 +00:00
Thomas Gelf 34ed3da3b8 IcingaObject: remove duplicated short name logic 2016-10-12 09:09:28 +00:00
Thomas Gelf c044de89de SyncPropertyForm: allow to sync m:n relations 2016-10-12 08:59:42 +00:00
Thomas Gelf 9e1cea0119 IcingaObject: fix v1 rendering for some properties
Mostly relations, no timeout, still ugly
2016-10-12 08:31:22 +00:00
Thomas Gelf b7018627a0 IcingaServiceSet: introduce a new object type 2016-10-12 07:19:02 +00:00
Thomas Gelf e96db8b296 IcingaObject: move duplicate logic to common func 2016-10-09 13:15:05 +00:00
Thomas Gelf cf063180d2 IcingaObject: start to dry out relation-related...
...code. Still weird and hard to understand because of lazy-loading,
can only get better. All this is required to be able to render objects
having obsolete dependencies in our activity log
2016-10-09 12:48:13 +00:00
Thomas Gelf 6f12663756 PrefetchCache: lot's of improvements
This commit enables the prefetch cache per default when rendering configs
and adds the following features:

* prefetch all kinds of Icinga object inheritance (imports)
* prefetch group memberships
* prefetch custom variables
* render vars with the same checksum only once

Roughly measured performance boost with a large real-life config, renders three
times faster as it did before. Might be even more for those suffering from high
latencies when accessing their DB remotely and/or on a slow storage.

fixes #12876
2016-10-09 12:41:06 +00:00
Thomas Gelf c0a8c49d4f show/activitylog: fallback rendering for hosts...
...with obsolete parents, that have been removed in the meantime
2016-10-06 16:29:50 +00:00
Thomas Gelf 749f035971 Db/IcingaObject: formatting & style 2016-10-05 18:05:59 +00:00
Thomas Gelf d1b7083145 IcingaObject: add helper methods for relations 2016-10-05 17:58:48 +00:00
Thomas Gelf 42212661f2 IcingaObject: document 'supports' vars and methods 2016-09-15 18:53:09 +00:00
Thomas Gelf 217fb38517 IcingaObject: implement supportsAssignRules 2016-09-09 09:06:31 +00:00
Thomas Gelf 029907f01f TimePeriodRange: ranges should be more generic...
...as they will not only be used in timeperiods
2016-08-31 16:23:23 +00:00
Thomas Gelf 56a7cb285d host/services: show inherited services...
...and magically applied ones
2016-08-23 14:18:54 +00:00
Thomas Gelf e639790d52 IcingaObject: improve type detection
fixes #12319
2016-08-09 14:17:57 +00:00
Corentin Ardeois 5bdd219533 Allow override of blacklisted properties
It is now a separate class attribute which can be overridden.
2016-08-04 15:07:26 +00:00
Thomas Gelf 4c978db3d0 IcingaConfig: allow to toggle legacy renderer
refs #12264
2016-08-01 06:59:31 +00:00
Thomas Gelf ce1c6f3099 Objects: simplify default rendering zone handling
For existing installations this should only affect Timeperiods, as
they will now prefer the global zone. Also some custom zone settings
might now take effect while they have formerly been ignored.

fixes #12252
2016-07-28 15:44:42 +00:00
Thomas Gelf 2bf5bdddb5 IcingaObject, imports: more legacy config support 2016-07-28 06:57:27 +00:00
Thomas Gelf 15acbb5290 IcingaObject::replaceWith: implement preserve...
...and add related tests, as this is a tricky one
2016-07-14 17:06:48 +02:00
Thomas Gelf a761bb108b IcingaService: render dedicated host before imports
This fixes issues with object and apply types showing different
behaviour in Icinga 2 when inheriting the very same template.
2016-06-17 11:55:48 +02:00
Thomas Gelf dc3a2ca999 IcingaObject: split object property rendering
Improves readability
2016-06-17 11:44:38 +02:00
Thomas Gelf 5c0ea2c3b0 IcingaObject: be strict on relations 2016-06-16 22:16:55 +02:00
Thomas Gelf 57656f8dd9 IcingaObject: externalize imported object loading 2016-06-16 21:40:22 +02:00
Thomas Gelf b83bfed186 IcingaObject: fix comments for disabled object...
...and switch to multiline comments, they look better in our diffs

fixes #11937
2016-06-13 17:20:44 +02:00
Thomas Gelf 0b92ca922f IcingaObject: render disabled objects as comments
fixes #11922
2016-06-11 00:30:28 +02:00
Thomas Gelf cb825b5b94 IcingaObject: fix resolveProperty in combination...
...with lazy-set properties
2016-05-26 01:35:12 +02:00
Thomas Gelf b3a1d54870 IcingaObject: fix c&p error, variable name 2016-05-20 09:23:48 +02:00
Thomas Gelf 018713a13f IcingaObject: smaller methods for import resolvers 2016-05-20 08:36:07 +02:00
Thomas Gelf 64fbdcfeee IcingaObjectImports: fix null handling 2016-05-20 08:12:46 +02:00
Thomas Gelf 576d62da26 IcingaObject: use resolved zone for apply/tpl 2016-05-10 20:23:45 +02:00
Thomas Gelf 1158409eeb IcingaObject: fix rendering target and tests 2016-05-02 10:23:32 +02:00
Thomas Gelf 8c02b1e6c5 IcingaObject: fix multi-relation rendering order 2016-04-22 11:12:29 +02:00
Thomas Gelf f8ef034358 IcingaObject: add render target helpers 2016-04-19 21:29:03 +02:00
Thomas Gelf e040e84e5b IcingaObject: add isDisabled helper method 2016-04-18 13:17:47 +02:00
Thomas Gelf 46e230c5ad IcingaObject: fix occasional error when showing...
...resolved properties for applied objects
2016-04-11 11:06:54 +02:00
Thomas Gelf 36c4e51aa0 IcingaObject: fix argument retrieval 2016-04-03 21:27:49 +02:00
Thomas Gelf 9cf3569884 IcingaObject: unresolved properties 2016-03-24 13:37:32 +01:00
Thomas Gelf a8ec07237d IcingaObject: provide former assignments for...
...the activity log
2016-03-24 11:40:32 +01:00
Thomas Gelf f8d6af7b3f IcingaObject: make assignments public 2016-03-24 06:49:19 +01:00
Thomas Gelf 33ff0c77e8 IcingaObjectAssignments: complete re-write 2016-03-24 06:46:13 +01:00
Thomas Gelf a49f163ca2 IcingaObject: fix argument setter 2016-03-21 10:35:11 +01:00
Thomas Gelf d7142b307a IcingaObject: clean up legacy methods 2016-03-20 14:51:18 +01:00
Thomas Gelf 3e016311d6 DirectorActivityLog: improve removal logging 2016-03-20 12:02:45 +01:00
Thomas Gelf dda16fd0d0 IcingaObject: introduce isObject helper method 2016-03-20 12:00:03 +01:00