Commit graph

85 commits

Author SHA1 Message Date
Sukhwinder Dhillon
f960d09cc2 BpNode: Remove unreachable break statements 2023-08-24 13:04:29 +02:00
Sukhwinder Dhillon
541ec5da6c BpNode: Property $children can be null 2023-08-24 13:04:29 +02:00
Sukhwinder Dhillon
8923476277 BpNode::getMissingChildren(): Use child name if alias not given
Host/Service alias is optional and null as default
2023-08-10 12:45:17 +02:00
Johannes Meyer
9c84764157 BpNode: Re-index childnames upon node removal 2023-08-09 16:13:01 +02:00
Sukhwinder Dhillon
25f37d6575 Use unescaped node name for missing children 2023-08-09 15:56:34 +02:00
Sukhwinder Dhillon
af4b98faeb Use fontawesome icons with ipl\Web\Widget\Icon class everywhere 2023-08-08 12:24:29 +02:00
Johannes Meyer
3fe17336dc Escape semicolons in node names
fixes #312
2023-08-08 08:46:48 +02:00
Johannes Meyer
52c150c56b Use the new Sort trait where applicable
Moves the entire order processing to the renderers as that's
where it's mostly relevant. The only cases where nodes are
still ordered outside the rendering is where changes are
applied based on user input, which happened based on what's
been previously rendered.
2023-08-03 15:19:28 +02:00
Sukhwinder Dhillon
83194e4942 Drop support for external_info and extra_info flag 2023-07-19 13:34:39 +02:00
Sukhwinder Dhillon
be2473864b Introduce new XOR (^) operator 2023-07-13 10:19:08 +02:00
raviks789
731541e667 Fix BP node in case it has pending-handled child node
Increment `PENDING` state summary counter of the BP node in case there are `PENDING-HANDLED` child/children node/s.
2022-07-27 09:23:45 +02:00
moreamazingnick
0b392762f9 fix/state-can-be-empty-#325 2022-04-06 16:28:02 +02:00
Florian Strohmaier
d325844b90 BPNode: Ignore node children states in state badges 2022-03-10 12:02:03 +01:00
Ravi Kumar Kempapura Srinivasa
af4226aa43 Address Node which is UP or OK with downtime. 2022-03-04 14:21:48 +01:00
Ravi Kumar Kempapura Srinivasa
f0aae66544 Redesign state badges for acknowledged nodes
Add and group state badges for acknowkedeged nodes based on state.
2022-03-04 14:21:48 +01:00
Valentina Da Rold
b78983f539 Add Degraded operator implementation
Refs #298
2022-02-18 11:41:06 +01:00
Johannes Meyer
49ebbc4cdb Apply state overrides on demand instead of directly
Internally non-process children are only instantiated once.
This means when applying state overrides directly they're
used everywhere and do not differ between the containing
process. State overrides are now applied explicitly and
on demand, decoupling them from children.
2020-07-01 08:54:34 +02:00
Johannes Meyer
0c7fca926f config: Use an extra line to store state overrides
Storing overrides as part of a node's name leads to way too complicated
code. A separate field is not only better for compatibility but also
more straightforward to process.
2020-06-26 14:08:05 +02:00
Christian Menapace
98b6b2c6d0 Add Service Override 2020-06-26 11:32:09 +02:00
Ravi Kumar Kempapura Srinivasa
6cc5eb8e74 Check recursively for Empty BpNodes
In BpNode::recalculateState() the BpNode needs to be recursively checked if its children is empty using BpNode::isEmpty() instead of BpNode::hasChildren().
2020-05-11 11:45:27 +02:00
Ravi Kumar Kempapura Srinivasa
e19612bd4a Extend abstract isEmpty() method to check for empty nodes in child nodes
We need to check recurively whether the BP Nodes contatin only child BpNodes which are empty and set the entire tree to state NODE_EMPTY state in this case.
2020-05-11 11:45:17 +02:00
Ravi Kumar Kempapura Srinivasa
d8567896f2 Fix 'missing node' errors for empty child nodes
Before the child empty nodes where set to missing nodes by BpNode::isMissing().

This has been corrected in this fix by checking if whether a child node is an empty node or not.
2020-05-11 11:44:55 +02:00
Ravi Kumar Kempapura Srinivasa
7de814a4af Set state to NODE_EMPTY in case of empty nodes
In case of empty nodes, the state is set to NODE_EMPTY now.
2020-05-11 11:44:41 +02:00
Ravi Kumar Kempapura Srinivasa
32abce2529 Don't show state-badges for empty nodes
Before, the empty nodes were to be considered as missing nodes. Correspondingly, the counter for missing in BpNode::getStateSummary() was increased if an empty node is encountered.

Now, the empty nodes are not assumed as missing nodes and the counter for missing is not increased for this case.
2020-05-11 11:44:14 +02:00
Eric Lippmann
a2854e8cf4 Use display_name as alias for host and service nodes 2020-02-05 15:01:22 +01:00
Dominik Seidel
1414e76d94 CLI: Add options --blame and --root-cause 2020-02-05 15:01:22 +01:00
Johannes Meyer
fe991d7f58 BpNode: Make sure to sort children alphabetically by default 2019-02-28 08:53:54 +01:00
Johannes Meyer
431a5e0085 Streamline usage of a node's name 2019-02-22 12:26:24 +01:00
Johannes Meyer
00b88055f7 BpConfig: Delay processing of imported configurations
Solves the issue that two processes cannot import each other
2019-02-22 12:26:24 +01:00
Johannes Meyer
2123b41f83 Properly integrate imported nodes
* Fixed navigation flow
* Full tree rendering
2019-02-22 12:26:24 +01:00
Johannes Meyer
505471c519 Node: Introduce $icon property 2019-02-22 12:26:24 +01:00
Johannes Meyer
3ba4842933 BpNode: Use all uppercase for operator names 2019-02-22 12:26:24 +01:00
Johannes Meyer
72f3af9fc9 BpNode: Reset keys when automatically sorting nodes 2019-02-22 12:26:24 +01:00
Johannes Meyer
876a577e85 Don't sort processes in case manual sorting has been applied 2019-02-22 12:26:23 +01:00
Eric Lippmann
7c491496fa Use natcasesort 2018-08-13 13:30:33 +02:00
Eric Lippmann
024d537272
Merge pull request #169 from Icinga/fix/minimum-worst-state
BpNode: Use worst state in minimum state calculation
2018-07-02 17:24:18 +02:00
Markus Frosch
9120449acb BpNode: Use worst state in minimum state calculation
Ensure we use the worst state within a minimum condition, previously we
did use the Xth best.

refs #167
2018-03-20 16:59:13 +01:00
Markus Frosch
98cc43f01b BpNode: Count missing nodes in getStateSummary
Children that are missing should increment the counter, as well as
if no children are present.

So it's easy to find missing nodes following the counters.
2017-06-01 16:51:22 +02:00
Thomas Gelf
ad1ff7af91 BpNode: use loop detection when checking for...
...missing children

fixes  #121
2017-03-21 11:30:49 +01:00
Thomas Gelf
98bd02c164 Node: clear missing when setting state 2017-02-20 15:01:10 +01:00
Thomas Gelf
14e30e4741 BpNode: set missing to unknown before fetching...
...sorting state

refs #105
2017-02-20 14:57:17 +01:00
Thomas Gelf
9750e13234 BpNode, process/show: error for missing children...
...and unknown as state

fixes #105
2017-02-20 14:47:30 +01:00
Thomas Gelf
61fd8caa93 BpNode: add a new helper method 2017-01-27 15:32:08 +01:00
Thomas Gelf
5f6b35906d AddNode: fix creating nested nodes
fixes #13883
2017-01-11 17:38:19 +01:00
Thomas Gelf
22583aa083 BpConfig: renamed from BusinessProcess 2017-01-11 14:09:30 +01:00
Thomas Gelf
149696fb50 BpNode: remove code related to legacy config 2017-01-11 13:40:42 +01:00
Thomas Gelf
9c22289bf3 BpNode: tweak hasInfoUrl() 2017-01-03 11:27:58 +01:00
Thomas Gelf
8bd1e10f95 DeleteNode: quite some rework, provide more...
...possibilities, remove "not implemented" exception
2017-01-03 11:23:05 +01:00
Thomas Gelf
c856a6fc26 BpNode: add comment to better reflect what's...
...going on. We are unknown when state calculation fails, not for empty
processes - related git commit message was misleading
2016-12-16 19:47:36 +01:00
Thomas Gelf
76a526d8dd BpNode: let empty processes be unknown 2016-12-16 19:41:22 +01:00