{% extends "layout.twig" %} {% block content %}

{{ server.name }} {% if server.group_name %} {{ server.group_name }} {% endif %}

Редактировать Назад к списку
Информация о сервере
Название: {{ server.name }}
Адрес: {{ server.address|default('-') }}
Группа: {% if server.group_name %} {{ server.group_name }} {% else %} - {% endif %}
Описание: {{ server.description|default('-') }}
Последние метрики: {% if server.last_metrics_at %} {{ server.last_metrics_at|date('d.m.Y H:i:s') }} {% else %} Нет данных {% endif %}
{% for metricName, metricData in metrics %} {% if metricName != 'top_cpu_proc' and metricName != 'top_ram_proc' %}
{{ metricName|replace({'_': ' ', 'load': 'загрузка', 'used': 'использование'})|title }} {% if metricData[0].unit %}({{ metricData[0].unit }}){% endif %}
{% if metricData %}

{{ metricData[0].value }}{{ metricData[0].unit|default('') }}

{{ metricData[0].created_at|date('d.m.Y H:i:s') }}

{% else %}

Нет данных за этот период

{% endif %}
{% endif %} {% if metrics|length == 0 %}
Нет данных о метриках за выбранный период
{% endif %}

Сервисы сервера {% if allServices is defined %} (найдено: {{ allServices|length }}) {% endif %}


{% if allServices is defined and allServices|length > 0 %} {# Сортируем сервисы: сначала running, потом stopped, потом unknown, затем по имени #} {% set runningServices = allServices|filter(s => s.status == 'running')|sort((a, b) => a.service_name|lower > b.service_name|lower) %} {% set stoppedServices = allServices|filter(s => s.status == 'stopped')|sort((a, b) => a.service_name|lower > b.service_name|lower) %} {% set unknownServices = allServices|filter(s => s.status != 'running' and s.status != 'stopped')|sort((a, b) => a.service_name|lower > b.service_name|lower) %} {# Выводим все сервисы по порядку #} {% for service in runningServices %}
running
Load: {{ service.load_state|default('-') }} | Active: {{ service.active_state|default('-') }}
{% endif %} {% for service in stoppedServices %}
stopped
Load: {{ service.load_state|default('-') }} | Active: {{ service.active_state|default('-') }}
{% endif %} {% for service in unknownServices %}
unknown
Load: {{ service.load_state|default('-') }} | Active: {{ service.active_state|default('-') }}
{% endif %} {% else %}
Агент не отправил список сервисов или не установлен
{% endif %}

Настройка порогов

{% for metricType in allMetricTypes %}
{{ metricType.name|replace({'_': ' ', 'load': 'загрузка', 'used': 'использование'})|title }} {% if metricType.unit %}({{ metricType.unit }}){% endif %}
0 = алерт сразу при превышении, >0 = алерт только если превышено дольше указанного времени
{% endif %}
{% endblock %}