- Fix tooltip data access: use chart data instead of API response
- Exclude uptime from metrics charts (SQL and template filters)
- Fix fetchProcesses() time format handling
- Add try-catch and proper Response handling in getProcesses API
- Fix Slim Response write() chaining issue
- Add last_seen to server query
- Remove server_id auto-resolution from validateAndGetToken()
- Links in edit.twig now use token instead of server_id
- Add agent_token retrieval in ServerController::edit()
BREAKING: install.sh now downloads agent from server instead of embedding it
Changes:
- AgentController: downloadAgent() method for serving agent.py with token auth
- AgentController: rewrite generateInstallScript() to curl agent from server
- agent.py: copy production version from server (with temp, disk, network metrics)
- agent.py: fix get_disk_metrics() to use priority mountpoints (/, /home, etc)
- agent.py: fix disk_total_gb collection to use priority mountpoints
- detail.twig: add fallback blocks for temperatures (alert-info)
- detail.twig: add fallback blocks for disk doughnuts (alert-warning)
- detail.twig: add fallback blocks for network graphs (alert-warning)
- detail.twig: add null check for ramTotalGB in tooltip
- detail.twig: improve thresholds form with human-readable labels and units
- ServerDetailController: query only metrics that exist on server and display on graphs
For server 3 (mirv.top):
- After deploy, download new install.sh and reinstall agent
- This will add disk_used_root, ram_total_gb, temperatures support
- Excluded network_rx and network_tx metrics from main metrics loop
- Removed separate network interface charts
- Verified single combined Temperatures chart (chart-temperatures) exists and is initialized
- Обновлен скрипт установки агента (добавлены lm-sensors, smartmontools)
- Агент теперь собирает температуры: CPU (через psutil), Диски (smartctl), GPU (nvidia-smi)
- Бэкенд автоматически определяет единицу измерения °C для метрик temp_*
- Добавлен общий график Температуры на страницу сервера
- Перемещены закрывающие </div> tab-pane metrics в правильное место
- Сетевые графики и doughnut диски теперь внутри вкладки Метрики
- Вкладки Сервисы и Пороги работают корректно
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
- Порядок: CPU → RAM → Network → Disk donuts
- Цвета графиков: CPU синий, RAM фиолетовый, Disk оранжевый
- Тултип RAM: Всего/Занято/Свободно ГБ + TOP процессы
- Карточки дисков: Свободно/Занято ГБ над doughnut
- Сетевой график: In (зелёная) / Out (красная) с зумом
- Исключены графики total_gb из line charts
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
- Добавлены doughnut графики для disk_used_root/home/boot/mnt_data
- Удалён общий disk_used line chart (заменён doughnut)
- Исключён crosshair плагин (конфликт с Chart.js)
- Установлена timezone Asia/Irkutsk (+8) для корректных запросов
- cmdline в тултипах процессов
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
- External handler проверяет флаг _tooltipHidden перед показом
- mouseout/mouseleave устанавливают флаг в true
- mousemove сбрасывает флаг в false
- Предотвращает повторный показ tooltip после скрытия
- Добавлен обработчик mouseout вместе с mouseleave
- Теперь tooltip скрывается при уходе курсора влево/вправо/вверх/вниз
- Убрано不必要的 clearing tooltip._active и draw()