Add System Status panel to HQ for admins

Project......: Performance Profiling
Sponsored-by.: NLnet NGI0 Commons Fund
This commit is contained in:
Harald Eilertsen
2026-02-18 21:32:47 +01:00
parent cc1713b69a
commit a2ee5705f4
2 changed files with 43 additions and 0 deletions

View File

@@ -9,6 +9,8 @@ namespace Zotlabs\Widget;
use App;
use Zotlabs\Lib\Apps;
use Zotlabs\Lib\Queue;
use Zotlabs\Lib\QueueWorkerStats;
class Channel_activities {
@@ -25,6 +27,9 @@ class Channel_activities {
self::$uid = local_channel();
self::$channel = App::get_channel();
if (is_site_admin()) {
self::get_system_status();
}
self::get_photos_activity();
self::get_files_activity();
self::get_webpages_activity();
@@ -247,5 +252,28 @@ class Channel_activities {
}
private static function get_system_status(): void {
$items = [];
if (function_exists('sys_getloadavg')) {
$items['System load'] = implode(' / ', sys_getloadavg());
}
$items['Output queue'] = Queue::get_undelivered();
$qwstats = new QueueWorkerStats();
$items['Queue workers'] = $qwstats->active;
$items['Worker queue size'] = $qwstats->size;
self::$activities['status'] = [
'label' => t('System status'),
'icon' => 'gpu-card',
'url' => z_root() . '/perf',
'date' => datetime_convert(),
'items' => $items,
'tpl' => 'system_status_widget.tpl'
];
}
}

View File

@@ -0,0 +1,15 @@
<div class="mb-1 text-uppercase">
<a href="{{$url}}"><i class="bi bi-{{$icon}} generic-icons-nav"></i>{{$label}}</a>
</div>
<div class="card">
<div class="card-body clearfix">
<table>
{{foreach $items as $title => $item}}
<tr>
<td><strong>{{$title}}:</strong></td>
<td><span>{{$item}}</span></td>
</tr>
{{/foreach}}
</table>
</div>
</div>