Dodaj Dodatkowy Monitor usługi do katalogu
/usr/share/openmediavault/engined/module/servicename.inc
Przykład 1:
<?php
class OMVModuleSERVICENAME extends \OMV\Engine\Module\ServiceAbstract
implements \OMV\Engine\Module\IServiceStatus
{
public function getName()
{
return "SERVICENAME";
}
public function getStatus()
{
$systemCtl = new \OMV\System\SystemCtl("SERVICENAME");
return array(
"name" => $this->getName(),
"title" => gettext("SERVICENAME"),
"enabled" => $systemCtl->isEnabled()
"running" => $systemCtl->isActive()
);
}
}
Przykład 2 (MariaDB):
<?php
/*
* After copying the file to /usr/share/openmediavault/engined/module run
* > monit restart omv-engined
* > omv-mkworkbench all
* on the shell
*/
class OMVModuleMariaDB extends \OMV\Engine\Module\ServiceAbstract
implements \OMV\Engine\Module\IServiceStatus
{
public function getName()
{
return "mariadb";
}
public function getStatus()
{
$cmd = new \OMV\System\Process("nc -zv 127.0.0.1 3306");
$cmd->setQuiet(true);
$cmd->execute($output, $exitStatus);
return array(
"name" => $this->getName(),
"title" => gettext("mariaDB"),
"enabled" => true,
"running" => (0 == $exitStatus) ? true : false
);
}
}
Przykład 3 (JDownloader):
<?php
/*
* After copying the file to /usr/share/openmediavault/engined/module run
* > monit restart omv-engined
* > omv-mkworkbench all
* on the shell
*/
class OMVModuleJDownloader extends \OMV\Engine\Module\ServiceAbstract
implements \OMV\Engine\Module\IServiceStatus
{
public function getName()
{
return "jdownloader";
}
public function getStatus()
{
$cmd = new \OMV\System\Process("nc -zv 192.168.2.2 3129");
$cmd->setQuiet(true);
$cmd->execute($output, $exitStatus);
return array(
"name" => $this->getName(),
"title" => gettext("JDownloader"),
"enabled" => true,
"running" => (0 == $exitStatus) ? true : false
);
}
}
Przykład 3 (Radicale):
<?php
/*
* After copying the file to /usr/share/openmediavault/engined/module run
* > monit restart omv-engined
* > omv-mkworkbench all
* on the shell
*/
class OMVModuleRadicale extends \OMV\Engine\Module\ServiceAbstract
implements \OMV\Engine\Module\IServiceStatus
{
public function getName()
{
return "radicale";
}
public function getStatus()
{
$cmd = new \OMV\System\Process("curl -f http://127.0.0.1/radicale/.web/");
$cmd->setQuiet(true);
$cmd->execute($output, $exitStatus);
return array(
"name" => $this->getName(),
"title" => gettext("Radicale"),
"enabled" => true,
"running" => (0 == $exitStatus) ? true : false
);
}
}
Po dodaniu Pliku należy użyć Komendy w ssh:
monit restart omv-engined
omv-mkworkbench all