mirror of
https://we.phorge.it/source/phorge.git
synced 2025-01-21 04:01:30 +01:00
51 lines
1.1 KiB
PHP
51 lines
1.1 KiB
PHP
|
<?php
|
||
|
|
||
|
final class PhabricatorDaemonManagementStatusWorkflow
|
||
|
extends PhabricatorDaemonManagementWorkflow {
|
||
|
|
||
|
public function didConstruct() {
|
||
|
$this
|
||
|
->setName('status')
|
||
|
->setSynopsis(pht('Show status of running daemons.'))
|
||
|
->setArguments(array());
|
||
|
}
|
||
|
|
||
|
public function execute(PhutilArgumentParser $args) {
|
||
|
$console = PhutilConsole::getConsole();
|
||
|
$daemons = $this->loadRunningDaemons();
|
||
|
|
||
|
if (!$daemons) {
|
||
|
$console->writeErr(
|
||
|
"%s\n",
|
||
|
pht("There are no running Phabricator daemons."));
|
||
|
return 1;
|
||
|
}
|
||
|
|
||
|
$status = 0;
|
||
|
printf(
|
||
|
"%-5s\t%-24s\t%s\n",
|
||
|
"PID",
|
||
|
"Started",
|
||
|
"Daemon");
|
||
|
foreach ($daemons as $daemon) {
|
||
|
$name = $daemon->getName();
|
||
|
if (!$daemon->isRunning()) {
|
||
|
$daemon->updateStatus(PhabricatorDaemonLog::STATUS_DEAD);
|
||
|
$status = 2;
|
||
|
$name = '<DEAD> '.$name;
|
||
|
}
|
||
|
printf(
|
||
|
"%5s\t%-24s\t%s\n",
|
||
|
$daemon->getPID(),
|
||
|
$daemon->getEpochStarted()
|
||
|
? date('M j Y, g:i:s A', $daemon->getEpochStarted())
|
||
|
: null,
|
||
|
$name);
|
||
|
}
|
||
|
|
||
|
return $status;
|
||
|
}
|
||
|
|
||
|
|
||
|
}
|