Commit graph

971 commits

Author SHA1 Message Date
Johannes Meyer
5ccc13c862
Merge pull request #305 from Icinga/fix/redesign-state-badge-widget
Redesign state badge widget on tiles
2022-03-10 12:24:26 +01:00
Florian Strohmaier
d325844b90 BPNode: Ignore node children states in state badges 2022-03-10 12:02:03 +01:00
Florian Strohmaier
2d299f73b9 Renderer: specify total number of nodes with "Node" 2022-03-10 12:02:03 +01:00
Florian Strohmaier
595c4a5cb3 Renderer: Do not display ok/up nodes 2022-03-04 14:23:33 +01:00
Johannes Meyer
8ab2082b28 Update requirements 2022-03-04 14:23:33 +01:00
Johannes Meyer
3fcc6dd105 Use class ìpl\Web\Widget\StateBadge 2022-03-04 14:21:48 +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
Johannes Meyer
711677f903
Merge pull request #277 from Icinga/feature/icingaDb-MySQL-backend-#276
Support Icinga DB
2022-02-18 12:11:56 +01:00
Johannes Meyer
8460ef4834
Merge pull request #298 from WuerthPhoenix/feature/degraded-operator
Introduce Degraded Operator
2022-02-18 12:04:19 +01:00
raviks789
e2fa339f99 'Display Name' and 'Description' can be left empty. 2022-02-18 11:46:33 +01:00
raviks789
a7b86f956c Do not show Backend select item when monitoring module is disabled 2022-02-18 11:46:33 +01:00
raviks789
6c2e1cfa0a Remove $backendName property from AddNodeForm and EditNodeForm 2022-02-18 11:46:33 +01:00
raviks789
34626cbec5 $row->state->in_downtime and $row->state->is_acknowledged are used as boolens in if condition 2022-02-18 11:46:33 +01:00
raviks789
ab4728ad54 Use ipl\Stdlib\Filter to filter the $queryHost and $queryService 2022-02-18 11:46:33 +01:00
raviks789
5cb389b052 Add icingadb to Requirements in doc/02-Installation.md. 2022-02-18 11:46:33 +01:00
raviks789
26a7a50d2c Add icingadb module to module dependencies 2022-02-18 11:46:33 +01:00
raviks789
6c5c38d425 Provide native implementations for the hooks: icingadb/HostActions and icingadb/ServiceActions 2022-02-18 11:46:33 +01:00
raviks789
d4bd45233b Remove unnecessary checks to check if backend name is '_icingadb'.
Instead use (! $bp->hasBackendName()) check with 'And' condition.
2022-02-18 11:46:22 +01:00
Valentina Da Rold
b78983f539 Add Degraded operator implementation
Refs #298
2022-02-18 11:41:06 +01:00
raviks789
daf0384e66 Use $isIcingadbPreferred to check if the businessproces preders icingadb as default backend. 2022-02-18 10:06:59 +01:00
raviks789
605834e7c4 trait cannot be a type for property
Replace the type of properties with type Icinga\Module\Icingadb\Common\Database with type ipl\Sql\Connection.
2022-02-18 10:06:59 +01:00
raviks789
1d12701293 Remove IcingaDb from list of available backends.
By default use monitoring backend if icingadb is preferred default backend is set to icingadb.
2022-02-18 10:06:59 +01:00
raviks789
a5165ef476 Do not set Backend in Metadata to null in case icingadb module doesnot exist. 2022-02-18 10:06:59 +01:00
raviks789
6ebaedccf4 Add moduleInit() method to HostController and ServiceController to check if icingadb is used.
Use moduleInit() to check whether icingadb to be used.
Also use ipl\Stdlib\Filter with $query->filter() instead $query->getSelectBase()->where() in case of icingadb.
2022-02-18 10:06:59 +01:00
raviks789
6552ae2004 Use trait Icinga\Module\Icingadb\Common\Database as icingadb backend object 2022-02-18 10:06:59 +01:00
raviks789
549ad92122 Do not set Backend in Metadata to null in case icingadb module doesnot exist in BpConfig
In case icingadb module is not present Backend in Metadata is set to null which is incorrect.
Also use static fetchDb() from IcingaDbObject class in case icingadb backend is being used.
2022-02-18 10:06:59 +01:00
raviks789
ed52d51131 Remove param 'icingadb' and set param 'backend' as '_icingadb' when icingadb is used 2022-02-18 10:06:59 +01:00
raviks789
df3f363f1b Add static fetchDb() method to library/Businessprocess/IcingaDbObject.php
Use this static method to get backend in IcingaDbState.
2022-02-18 10:06:02 +01:00
raviks789
8f68ffe2a8 Drop library/Businessprocess/Common/IcingadbDatabase.php in favor of Icinga\Module\Icingadb\Common\Database 2022-02-10 12:50:28 +01:00
raviks789
1afa7668eb Move enumServiceStateList and enumHostStateList to trait EnumList.
The above methods in AddNodeForm and EditNodeForm is moved to the trait EnumList.
2022-02-03 16:56:46 +01:00
raviks789
407d4f98db Remove enumHostForServiceList, enumHostList, enumServiceList from EditNodeForm.
These methods are present in the trait EnumList and EditNodeForm is already using that trait.
2022-02-03 16:56:46 +01:00
raviks789
3904791438 Cleanup the code
Remove unnecessary comments and unused namespaces.
2022-02-03 16:56:46 +01:00
raviks789
7b41906881 Select default backend when icingadb is deactivated and the same when monitoring backend is deactivated 2022-02-03 16:56:46 +01:00
raviks789
69e879a745 Make changes to support the case when icingadb is set as the preferred backend. 2022-02-03 16:55:47 +01:00
raviks789
685f44d118 Change class name IcingaDbBackend to IcingaDbObject 2022-02-03 16:55:02 +01:00
raviks789
9b0c4cca34 Remove IcingadbBackend class extension from IcingaDbState and clean IcingaDbState class.
Do not assemble the query as there is no need to do that. Also, no need to have associative arrays for host and service state columns.
2022-02-03 16:55:02 +01:00
raviks789
df72ff65be Move enumHostListByFilter and enumServiceListByFilter to EnumList trait.
Move enumHostListByFilter and enumServiceListByFilter to EnumList trait from AddNodeForm and change fetchServices and fetchHosts
method to work with filters in IcingaDbBackEnd class.
Also, applyMonitoringRestriction is changed to applyIcingaDbRestrictions in IcingaDbBackend.
2022-02-03 16:55:02 +01:00
Sukhwinder Dhillon
a6dad05445 BpConfigBaseForm: Only add backends of enabled modules 2022-02-03 16:55:02 +01:00
Sukhwinder Dhillon
55b0ddf8f6 BpConfig: Use icingadb backend
Use icingadb backend if configured in preferences or
monitoring module is disabled
2022-02-03 16:55:02 +01:00
Sukhwinder Dhillon
08175ae652 Provide hook for icingadbSupport 2022-02-03 16:55:02 +01:00
Sukhwinder Dhillon
afff0bea34 BpConfigBaseForm: Fix backend change
Do not use the previously saved backend if the value has been
changed to `Use the configured default backend` (null)
2022-02-03 16:55:02 +01:00
Ravi Kumar Kempapura Srinivasa
5d905426b6 Use IcingaDbState for nodes from IcingaDb MySQL backend in ProcessCommand
Since we have included monitored nodes from IcingaDB MySQL backend, the states for these nodes will be now calculated using IcingaDbState::apply.
2022-02-03 16:55:02 +01:00
Ravi Kumar Kempapura Srinivasa
f9be5f81d6 Change state calculation in IcingaDbState
Since we are fetching the values directly using assembleSelect instead of using ORM, 'last_state_change', 'in_downtime' and 'ack' have different values compared to monitored nodes other than IcingaDb MySQL backend. This is addresses in this commit.
2022-02-03 16:54:01 +01:00
Ravi Kumar Kempapura Srinivasa
d1526a36cb Address the comments on IcingaDbState and the Controllers
Address the comments from Eric in the pull request on IcingaDbState, Web/Controller, HostController and ServiceController.
2022-02-03 16:54:01 +01:00
Ravi Kumar Kempapura Srinivasa
ce3bbde289 Apply public static getRestriction and applyMonitoringRestriction changes
Apply the public static getRestriction and applyMonitoringRestriction changes in the places were the corresponding methods are used.
2022-02-03 16:54:01 +01:00
Ravi Kumar Kempapura Srinivasa
d494cf3cee Each PHP statement must be on a line by itself
Previously there was an error during php codesniffer test at line 53 of IcingaDbState. Changes are made to correct this error.
2022-02-03 16:54:01 +01:00
Ravi Kumar Kempapura Srinivasa
c0f422d750 Resolve PHP CodeSniffer issue
Remove the extra semi-colon in line 53 in IcingaDbState
2022-02-03 16:54:01 +01:00
Ravi Kumar Kempapura Srinivasa
843a556f6e Remove the unwanted comments in IcingaDbState
Clean IcingaDbState class by removing the unwanted comments.
2022-02-03 16:54:01 +01:00
Ravi Kumar Kempapura Srinivasa
efcea15ab6 Clean the scripts and resolve the comments
Clean the scripts to pass the phpcodesniffer tests and resolve the comments provided by Eric.
2022-02-03 16:54:01 +01:00