[API] Added new status route to get some system infos
parent
556b67af99
commit
2ab73da2cf
|
@ -1117,6 +1117,59 @@ if (isset($_SESSION['mailcow_cc_role']) || isset($_SESSION['pending_mailcow_cc_u
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case "status":
|
||||||
|
switch ($object) {
|
||||||
|
case "containers":
|
||||||
|
$containers = (docker('info'));
|
||||||
|
foreach ($containers as $container => $container_info) {
|
||||||
|
$container . ' (' . $container_info['Config']['Image'] . ')';
|
||||||
|
$containerstarttime = ($container_info['State']['StartedAt']);
|
||||||
|
$containerstate = ($container_info['State']['Status']);
|
||||||
|
$containerimage = ($container_info['Config']['Image']);
|
||||||
|
|
||||||
|
$temp[$container] = array(
|
||||||
|
'type' => 'info',
|
||||||
|
'container' => $container,
|
||||||
|
'state' => $containerstate,
|
||||||
|
'started_at' => $containerstarttime,
|
||||||
|
'image' => $containerimage
|
||||||
|
);
|
||||||
|
|
||||||
|
}
|
||||||
|
echo json_encode($temp, JSON_UNESCAPED_SLASHES);
|
||||||
|
break;
|
||||||
|
case "vmail":
|
||||||
|
$exec_fields_vmail = array('cmd' => 'system', 'task' => 'df', 'dir' => '/var/vmail');
|
||||||
|
$vmail_df = explode(',', json_decode(docker('post', 'dovecot-mailcow', 'exec', $exec_fields_vmail), true));
|
||||||
|
|
||||||
|
$temp = array(
|
||||||
|
'type' => 'info',
|
||||||
|
'disk' => $vmail_df[0],
|
||||||
|
'used' => $vmail_df[2],
|
||||||
|
'total'=> $vmail_df[1],
|
||||||
|
'used_percent' => $vmail_df[4]
|
||||||
|
);
|
||||||
|
|
||||||
|
echo json_encode($temp, JSON_UNESCAPED_SLASHES);
|
||||||
|
break;
|
||||||
|
case "solr":
|
||||||
|
$solr_size = ($solr_status['status']['dovecot-fts']['index']['size']);
|
||||||
|
$solr_documents = ($solr_status['status']['dovecot-fts']['index']['numDocs']);
|
||||||
|
|
||||||
|
if (strtolower(getenv('SKIP_SOLR')) != 'n') {
|
||||||
|
$solr_status = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
echo json_encode(array(
|
||||||
|
'type' => 'info',
|
||||||
|
'solr_enabled' => $solr_status,
|
||||||
|
'solr_size' => $solr_size,
|
||||||
|
'solr_documents' => $solr_documents
|
||||||
|
));
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
break;
|
||||||
break;
|
break;
|
||||||
// return no route found if no case is matched
|
// return no route found if no case is matched
|
||||||
default:
|
default:
|
||||||
|
|
Loading…
Reference in New Issue