Merge pull request #3731 from Icinga/feature/export-hosts-to-module-x509

Export hosts to the x509 module
This commit is contained in:
Johannes Meyer 2019-03-29 09:31:09 +01:00 committed by GitHub
commit 9b5880f6d4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 36 additions and 0 deletions

View File

@ -0,0 +1,35 @@
<?php
/* Icinga Web 2 | (c) 2019 Icinga GmbH | GPLv2+ */
namespace Icinga\Module\Monitoring\ProvidedHook\X509;
use Icinga\Data\Filter\Filter;
use Icinga\Module\Monitoring\Backend\MonitoringBackend;
use Icinga\Module\X509\Hook\SniHook;
class Sni extends SniHook
{
public function getHosts(Filter $filter = null)
{
$hosts = MonitoringBackend::instance()
->select()
->from('hoststatus', [
'host_name',
'host_address',
'host_address6'
]);
if ($filter !== null) {
$hosts->applyFilter($filter);
}
foreach ($hosts as $host) {
if (! empty($host->host_address)) {
yield $host->host_address => $host->host_name;
}
if (! empty($host->host_address6)) {
yield $host->host_address6 => $host->host_name;
}
}
}
}

View File

@ -4,3 +4,4 @@
/** @var $this \Icinga\Application\Modules\Module */
$this->provideHook('ApplicationState');
$this->provideHook('X509/Sni');