syslog v0.6.0 [base]


Журнал бота для кабинета (прямой эфир с паузой).

README

# syslog

Журнал бота для кабинета: прямой эфир с паузой.

Тип: Модуль. Категория: `base`. Зависимостей нет.

## Описание

Читалка логов без SSH. Модуль показывает хвост системного журнала службы с фильтрами по уровню и размеру выборки — быстрая диагностика «что упало и когда», не вставая из кабинета.

Источник выбирается сам, по цепочке: заданный в `SYSTEMD_UNIT` юнит, затем свой юнит (в котором запущен бот), затем частые имена служб, затем файл `data/logs/bot.log`, затем общий журнал. Пустой `SYSTEMD_UNIT` — не ошибка: логи всё равно найдутся.

В кабинете журнал идёт прямым эфиром: новые строки подливаются сами. Поток можно заморозить паузой и спокойно прочитать нужное.

Ниже эфира — окно «⚠ Варнинги и ошибки»: весь файл логов (`bot.log` + ротации), новые сверху, таблица время/модуль/уровень/текст с пагинацией (20/50/100 на странице). Трейсбеки приклеены к записи-причине.

## Права

- `view_logs` — Просмотр журнала бота в кабинете

## Web

- `GET /api/syslog/logs` — хвост журнала (`?tail=200|500|1000`, `?level=all|info|warning|error`)
- `GET /api/syslog/problems` — варнинги/ошибки всего журнала таблицей (`?level=warning|error`, `?page=1`, `?per_page=20|50|100`)

## Конфигурация (`config.schema.json`)

- Опциональные: `SYSTEMD_UNIT` = ``

Манифест

{
  "name": "syslog",
  "version": "0.6.0",
  "category": "base",
  "description": "Журнал бота для кабинета (прямой эфир с паузой).",
  "requires": [],
  "rights": [],
  "api_methods": [],
  "web_routes": [],
  "commit": "0bbe59d1e1f6de9abe9b853d242e5310239fa4ae",
  "updated": "2026-09-22 09:02:39 +0300",
  "history": [
    {
      "version": "0.1.0",
      "date": "2026-09-09 16:13:44 +0300",
      "commit": "91bed316610d30bb1e1a603299c904f4a759999e"
    },
    {
      "version": "0.2.0",
      "date": "2026-09-11 10:14:23 +0300",
      "commit": "86ca69448ecf0c529c97ee1215747a8eb33dcc48"
    },
    {
      "version": "0.3.0",
      "date": "2026-09-17 15:23:08 +0300",
      "commit": "4341fd29b1fb92c27825071d49a701fe6fea601f"
    },
    {
      "version": "0.4.0",
      "date": "2026-09-17 15:51:06 +0300",
      "commit": "665dab3aa17bd5c52ba46e631ba9451a52d5063c"
    },
    {
      "version": "0.5.0",
      "date": "2026-09-18 10:18:07 +0300",
      "commit": "aa0cda60970ce2537731e008256dc93eda58e436"
    },
    {
      "version": "0.6.0",
      "date": "2026-09-21 17:56:41 +0300",
      "commit": "bf8125926601829a1ee527438f12a16e5ca4b006"
    }
  ],
  "integrity": "sha256:565357fe1c3776fef5b48899a9db14b3cc164f4b06686de0c2bf4daef0954789",
  "files": "[7 файлов — см. вкладки ниже]",
  "note": "",
  "wdesc": "",
  "wbody": "",
  "_extra": {
    "api": "[]",
    "events_emitted": "[]",
    "events_subscribed": "[]",
    "shared_routes": "",
    "config_schema": "config.schema.json",
    "env_example": ".env.example"
  }
}

Файлы и исходники

Дерево файлов

  • · корень
    • 2.0 КБ
    • 0.1 КБ
    • 0.5 КБ
    • 0.5 КБ
    • 11.2 КБ
  • web/
    • 2.8 КБ
    • 4.7 КБ

Предпросмотр

Выберите файл в дереве выше — код откроется здесь.

История версий

versiondatecommit
0.6.02026-09-21bf8125926601
0.5.02026-09-18aa0cda60970c
0.4.02026-09-17665dab3aa17b
0.3.02026-09-174341fd29b1fb
0.2.02026-09-1186ca69448ecf
0.1.02026-09-0991bed316610d