1
0
mirror of https://github.com/mailcow/mailcow-dockerized.git synced 2025-02-09 13:46:58 +02:00

Added Platform Information on Status Page

This commit is contained in:
DerLinkman 2023-05-02 16:08:58 +00:00
parent 6b65f0fc74
commit b5acf56e20
5 changed files with 23 additions and 5 deletions

View File

@ -9,6 +9,7 @@ import os
import json import json
import asyncio import asyncio
import redis import redis
import platform
from datetime import datetime from datetime import datetime
import logging import logging
from logging.config import dictConfig from logging.config import dictConfig
@ -485,7 +486,8 @@ async def get_host_stats(wait=5):
"swap": psutil.swap_memory() "swap": psutil.swap_memory()
}, },
"uptime": time.time() - psutil.boot_time(), "uptime": time.time() - psutil.boot_time(),
"system_time": system_time.strftime("%d.%m.%Y %H:%M:%S") "system_time": system_time.strftime("%d.%m.%Y %H:%M:%S"),
"architecture": platform.machine()
} }
redis_client.set('host_stats', json.dumps(host_stats), ex=10) redis_client.set('host_stats', json.dumps(host_stats), ex=10)

View File

@ -43,7 +43,7 @@ $(document).ready(function() {
if (mailcow_info.branch === "master"){ if (mailcow_info.branch === "master"){
check_update(mailcow_info.version_tag, mailcow_info.project_url); check_update(mailcow_info.version_tag, mailcow_info.project_url);
} }
$("#maiclow_version").click(function(){ $("#mailcow_version").click(function(){
if (mailcow_cc_role !== "admin" && mailcow_cc_role !== "domainadmin" || mailcow_info.branch !== "master") if (mailcow_cc_role !== "admin" && mailcow_cc_role !== "domainadmin" || mailcow_info.branch !== "master")
return; return;
@ -1302,6 +1302,12 @@ function update_stats(timeout=5){
$("#host_cpu_usage").text(parseInt(data.cpu.usage).toString() + "%"); $("#host_cpu_usage").text(parseInt(data.cpu.usage).toString() + "%");
$("#host_memory_total").text((data.memory.total / (1024 ** 3)).toFixed(2).toString() + "GB"); $("#host_memory_total").text((data.memory.total / (1024 ** 3)).toFixed(2).toString() + "GB");
$("#host_memory_usage").text(parseInt(data.memory.usage).toString() + "%"); $("#host_memory_usage").text(parseInt(data.memory.usage).toString() + "%");
if (data.architecture == "aarch64"){
$("#host_architecture").html('<span data-bs-toggle="tooltip" data-bs-placement="top" title="' + lang_debug.wip +'">' + data.architecture + ' ⚠️</span>');
}
else {
$("#host_architecture").html(data.architecture);
}
// update cpu and mem chart // update cpu and mem chart
var cpu_chart = Chart.getChart("host_cpu_chart"); var cpu_chart = Chart.getChart("host_cpu_chart");

View File

@ -498,6 +498,7 @@
} }
}, },
"debug": { "debug": {
"architecture": "Architektur",
"chart_this_server": "Chart (dieser Server)", "chart_this_server": "Chart (dieser Server)",
"containers_info": "Container-Information", "containers_info": "Container-Information",
"container_running": "Läuft", "container_running": "Läuft",
@ -534,7 +535,8 @@
"update_available": "Es ist ein Update verfügbar", "update_available": "Es ist ein Update verfügbar",
"no_update_available": "Das System ist auf aktuellem Stand", "no_update_available": "Das System ist auf aktuellem Stand",
"update_failed": "Es konnte nicht nach einem Update gesucht werden", "update_failed": "Es konnte nicht nach einem Update gesucht werden",
"username": "Benutzername" "username": "Benutzername",
"wip": "Aktuell noch in Arbeit"
}, },
"diagnostics": { "diagnostics": {
"cname_from_a": "Wert abgeleitet von A/AAAA-Eintrag. Wird unterstützt, sofern der Eintrag auf die korrekte Ressource zeigt.", "cname_from_a": "Wert abgeleitet von A/AAAA-Eintrag. Wird unterstützt, sofern der Eintrag auf die korrekte Ressource zeigt.",

View File

@ -498,6 +498,7 @@
} }
}, },
"debug": { "debug": {
"architecture": "Architecture",
"chart_this_server": "Chart (this server)", "chart_this_server": "Chart (this server)",
"containers_info": "Container information", "containers_info": "Container information",
"container_running": "Running", "container_running": "Running",
@ -534,7 +535,8 @@
"update_available": "There is an update available", "update_available": "There is an update available",
"no_update_available": "The System is on the latest version", "no_update_available": "The System is on the latest version",
"update_failed": "Could not check for an Update", "update_failed": "Could not check for an Update",
"username": "Username" "username": "Username",
"wip": "Currently Work in Progress"
}, },
"diagnostics": { "diagnostics": {
"cname_from_a": "Value derived from A/AAAA record. This is supported as long as the record points to the correct resource.", "cname_from_a": "Value derived from A/AAAA record. This is supported as long as the record points to the correct resource.",

View File

@ -49,6 +49,12 @@
<p><b>{{ hostname }}</b></p> <p><b>{{ hostname }}</b></p>
</div></td> </div></td>
</tr> </tr>
<tr>
<td>{{ lang.debug.architecture }}</td>
<td class="text-break"><div>
<p id="host_architecture">-</p>
</div></td>
</tr>
<tr> <tr>
<td>IPs</td> <td>IPs</td>
<td class="text-break"> <td class="text-break">
@ -70,7 +76,7 @@
<td>Version</td> <td>Version</td>
<td class="text-break"> <td class="text-break">
<div class="fw-bolder"> <div class="fw-bolder">
<p ><a href="#" id="maiclow_version">{{ mailcow_info.version_tag }}</a></p> <p ><a href="#" id="mailcow_version">{{ mailcow_info.version_tag }}</a></p>
<p id="mailcow_update"></p> <p id="mailcow_update"></p>
</div> </div>
</td> </td>