Choose lang:
English |
Русский
[1.27.1] - 2026-10-29
🚀 Ключевое нововведение
- 📋 Логи любых служб прямо в панели — блок «Логи» перестал быть ограничен логами бота и сервера. Теперь к нему можно подключить любую systemd‑службу или Docker‑контейнер и смотреть их журнал в реальном времени (
journalctl -uдля systemd, Docker API для контейнеров), с историей последних 300 строк и фильтром по уровню.- Управление источниками: кнопка «+» рядом с вкладками открывает окно с двумя списками — отслеживаемые службы и доступные для добавления. По умолчанию показываются только запущенные; остановленные находятся через поиск.
- Умный поиск: понимает ввод в неверной раскладке («тпштч» →
nginx) и опечатки с перестановкой букв («ngnix», «dokcer»), предлагая варианты под подсказкой «Возможно, вы имели в виду». - Вкладка службы: при просмотре появляется отдельный переключатель с именем службы. Крестик закрывает единственный источник; при нескольких — стрелка раскрывает компактный список для переключения и удаления. Выбор сохраняется между сессиями.
- Безопасность: имя службы проверяется по фактическому списку установленных юнитов и контейнеров, команды собираются без shell.
⚡ Производительность
- Инвентаризация служб на порядки быстрее. Ранее для каждой службы запускался отдельный процесс
systemctl show(на типичном VPS — сотни форков на один запрос). Теперь статусы всех служб читаются двумя вызовамиsystemctlи одним запросом к Docker; результат кэшируется на сервере (30 с, сброс при start/stop/restart) и в браузере на время вкладки. Это ускоряет не только новое окно логов, но и список служб в Telegram‑боте. - Статика без перезапуска. Версия ресурсов (
?v=) теперь пересчитывается по времени изменения JS/CSS, а не фиксируется при старте процесса — после обновления браузер гарантированно получает новые файлы.
🐛 Исправлено
- Шапка пропадала при смене темы на мобильных: View Transition отключён на узких экранах — закреплённая навигация больше не исчезает на прокрученной странице.
- Слайдер темы в режиме для слабовидящих: положение пересчитывается после переключения режима с учётом изменившихся размеров.
- Lazy‑load при смене размера окна: наблюдатель переинициализируется при переходе desktop ↔ tablet ↔ mobile, а не только при загрузке страницы.
- Watchdog потреблял ресурсы в простое: systemd‑юнит настраивается как событийный
oneshot‑обработчик (OnFailure) до запуска бота; обновление больше не перезапускает его как постоянную службу. - Шум в логах при переключении источников: обрыв соединения на этапе отправки SSE‑заголовков (браузер закрывает старый
EventSourceраньше, чем сервер успевает ответить) больше не оставляет трейсбекClientConnectionResetError— во всех SSE‑эндпоинтах.
✨ Интерфейс
- Единый стиль контролов блока «Логи»: фильтр уровня и переключатели источников — одинаковой высоты и в одном визуальном стиле; заголовок сокращён до «Логи». Область вывода имеет фиксированную высоту и больше не сжимается, когда у выбранного источника мало записей.
- Мобильная раскладка: на узких экранах контролы занимают отдельную строку на всю ширину без пустот и переносов; подписи сокращаются до «Бот»/«Сервер», длинное имя службы обрезается многоточием, на самых узких экранах у фильтра остаётся только иконка.
- Обновление графических материалов и PWA‑галереи: актуализирована галерея скриншотов проекта в документации (
assets/) — мобильный PWA‑клиент, веб‑интерфейс, адаптивные графики метрик и экраны мониторинга нод.
Full Changelog: 1.27.0...1.27.1