Add temperature monitoring and optional server URL links to dashboard
This commit is contained in:
@@ -23,6 +23,13 @@
|
||||
{% set sys = d.get('system', {}) if d.get('system') else {} %}
|
||||
{% set cpu = d.get('cpu', {}) if d.get('cpu') else {} %}
|
||||
{% set mem = d.get('memory', {}) if d.get('memory') else {} %}
|
||||
{% set temps = d.get('temperatures', {}) if d.get('temperatures') else {} %}
|
||||
{% set max_temp = namespace(val=0.0) %}
|
||||
{% for k, v in temps.items() %}
|
||||
{% if v|float > max_temp.val %}
|
||||
{% set max_temp.val = v|float %}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% set cpu_pct = cpu.get('usage_percent', '0')|float %}
|
||||
{% set mem_pct = mem.get('usage_percent', '0')|float %}
|
||||
{% set disk_usages = d.get('disk_usage', []) if d.get('disk_usage') else [] %}
|
||||
@@ -42,6 +49,9 @@
|
||||
<div class="card-header">
|
||||
<span class="status-dot {% if server.is_online %}online{% else %}offline{% endif %}"></span>
|
||||
<span class="server-name">{{ server.hostname }}</span>
|
||||
{% if server.url %}
|
||||
<a href="{{ server.url }}" class="server-link" target="_blank" rel="noopener" onclick="event.stopPropagation();" title="{{ server.url }}">↗</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
<div class="server-ip">{{ server.primary_ip or 'No IP' }}</div>
|
||||
<div class="server-os">{{ sys.get('os_pretty', '') }}</div>
|
||||
@@ -69,6 +79,15 @@
|
||||
</div>
|
||||
<span class="usage-pct">{{ '%.0f'|format(root_disk.pct) }}%</span>
|
||||
</div>
|
||||
{% if max_temp.val > 0 %}
|
||||
<div class="usage-row">
|
||||
<span class="usage-label">TEMP</span>
|
||||
<div class="usage-bar-bg">
|
||||
<div class="usage-bar-fill" style="width: {{ [max_temp.val, 100.0]|min }}%; background: {{ max_temp.val|temp_color }};"></div>
|
||||
</div>
|
||||
<span class="usage-pct">{{ '%.0f'|format(max_temp.val) }}°</span>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="offline-label">Unreachable</div>
|
||||
@@ -105,6 +124,21 @@
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<!-- Temperatures -->
|
||||
{% if temps %}
|
||||
<div class="detail-section">
|
||||
<h4>Temperatures</h4>
|
||||
<table>
|
||||
{% for sensor, value in temps.items() %}
|
||||
<tr>
|
||||
<td>{{ sensor }}</td>
|
||||
<td style="color: {{ value|float|temp_color }}">{{ value }}°C</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</table>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<!-- Memory -->
|
||||
<div class="detail-section">
|
||||
<h4>Memory</h4>
|
||||
|
||||
Reference in New Issue
Block a user