Wiki / Core Features / Журнал аудита

Журнал аудита

Обновлено Maxime_48 · 3 часа назад · Просмотры: 100

Языки: English Français Deutsch Español Português (Brasil) Italiano Nederlands Polski Türkçe Русский 日本語 한국어 中文

Журнал аудита записывает, что люди делают внутри панели YAWBDB: кто включил функцию, изменил настройку, добавил участника команды или что сделал администратор платформы в бэкофисе. Это ваш след ответственности за всё, что происходит в панели управления.

Это не то же самое, что Server Logs. Server Logs записывает события Discord (входы, удаление сообщений, голосовая активность и т. д.). Журнал аудита записывает действия в панели (изменения настроек, управление командой, модерация). Они отвечают на разные вопросы: «что произошло на моём сервере Discord?» и «кто что изменил в моей панели?».


🔭 Три представления, один след

Журнал аудита - это один и тот же след, увиденный на трёх уровнях. Действие автоматически появляется в каждом представлении, где оно уместно, так что смотреть больше чем в одном месте не нужно.

Представление Где Что показывает
Активность сервера Сервер → Журнал активности Всё, что сделано с настройками этого сервера
Активность команды Настройки команды → Журнал активности Всё управление командой и всё, что сделано на каждом сервере, которым владеет команда
Бэкофис (администраторы) Админ → Журнал аудита Каждое действие по всей платформе, все команды и серверы

Поскольку представления связаны между собой, одно действие сразу появляется везде, где оно важно. Включение функции на сервере отображается в журнале этого сервера, в журнале его команды и в бэкофисе. Когда администратор платформы действует на одном из ваших серверов, вы видите это и в журналах своей команды и сервера, с чёткой пометкой АДМИН, так что вмешательство бэкофиса никогда не остаётся для вас незаметным.


👁️ Кто что видит

  • Активность сервера и команды - владелец команды и участники с правами управления (роль «Администратор»). Участники без прав управления не могут её открыть.
  • Бэкофис - только администраторы платформы. Они видят полный, нефильтрованный след.

📋 Что записывается

Настройки сервера

  • Включение или отключение функций
  • Сохранение настроек функций (Automod, Join Verification, Starboard, Server Logs и остальных)
  • Удаление сервера из команды

Управление командой

  • Приглашение, добавление, удаление участников или их выход
  • Переименование или удаление команды

Действия в бэкофисе (администраторов)

  • Пользователя забанили, разбанили или назначили ему новую роль на платформе
  • Обновление SEO-настроек платформы и учётных данных интеграций
  • Отправка рассылки, публикация или повторная отправка объявления
  • Изменение цены тарифа или синхронизация с PayPal, перевод функции в бету или из беты
  • Перезапись ротации статусов бота, удаление раздела вики
  • Очистка, которая удаляет все серверы, из которых бот уже ушёл

Модерация - решения, принятые в отношении человека

  • Наказание участника, переписанная причина, очищенная история
  • Принятая или отклонённая заявка, удалённые ответы
  • Закрытая жалоба или наказание, выданное прямо из неё
  • Решение по апелляции; закрытый или удалённый тикет
  • Скорректированный или сброшенный XP, участник, удалённый из списка дней рождения, решение по предложению

Функции сервера: созданные, переписанные и удалённые

  • Правила Automod, пользовательские команды, шаблоны эмбедов, розыгрыши
  • Сообщения с ролями по реакции, запланированные сообщения, соцоповещения
  • Дни рождения, предложения, настройки уровней и их граф наград

Каждая запись фиксирует, кто это сделал (сохраняется, даже если его аккаунт потом удалён), когда и затронутый объект.

Почему модерация - отдельная категория. Решение, принятое в отношении человека, не должно стоять в одном списке с выбором цвета. Наказания, очищенные истории, отклонённые заявки и скорректированный XP лежат отдельно от изменений настроек, так что владелец сервера может читать одно, не продираясь через другое.

Какой пробел это закрыло. Раньше модерация оставляла свой след в канале журнала Discord, а он необязателен. На сервере без такого канала очистка истории участника не оставляла вообще ничего. А наказание прямо из жалобы полностью обходило страницу модерации: это было единственное наказание без какого-либо следа в панели.

Что намеренно не записывается

  • Ответы персонала и внутренние заметки - это уже долговечные записи с указанием автора; их аудит скопировал бы каждое сообщение во вторую таблицу без всякой пользы.
  • Изменение порядка тарифов, разделов вики или страниц вики - это сдвигает только столбец сортировки и ничего больше.
  • Текст страницы вики - он уже архивируется версия за версией с указанием автора.
  • Что говорила запись памяти ИИ. След фиксирует, что факт был записан, изменён или удалён, но никогда не его содержание. След живёт дольше факта и очищается по собственному расписанию, так что копирование фразы в него тихо отменило бы удаление.

🔍 Что именно изменилось

Большинство записей содержат таблицу до / после: не просто «настройки Wordle сохранены», а поля, которые изменились, и значения, из которых и в которые они изменились.

Поле До После
channel_id 8412… 9930…
cooldown_seconds 10 30

Откройте Подробности у любой записи, чтобы увидеть её. Несколько особенностей того, как это устроено:

  • Перечисляется только то, что действительно изменилось. Сохранение формы без изменений ничего не записывает, а поле, вернувшееся из формы в другом виде ("1" вместо 1), не считается изменением.
  • Списки сравниваются целиком. Добавление одного канала в список разрешённых читается как одно изменение этого списка, а не как сдвиг каждой записи.
  • Вложенные настройки читаются как путь, так что categories.voice.enabled говорит, какую категорию вы отключили.
  • Учётные данные никогда не записываются. Если токен или секрет изменён, запись фиксирует сам факт ротации: обе стороны показывают ••••••••. Это относится ко всему, включая учётные данные интеграций в админке.

Каждая запись читается на вашем языке: фраза следует языку, выбранному вами для панели, а английская строка, с которой запись была сохранена, остаётся прямо под ней, если они читаются по-разному. Записи, сделанные до появления этой возможности, по-прежнему читаются только на английском.


🎚️ Поиск записи

Одни и те же фильтры доступны во всех трёх представлениях:

  • Поиск - автор, действие, описание или затронутый объект
  • Категория - функция, сервер, команда, участник, подписка, оплата, админ, вход
  • Действие - точное действие, выбираемое из того, что реально есть в вашем журнале
  • Автор - один человек
  • Диапазон дат - с / по
  • Сервер (представления команды и бэкофиса) и Источник: админ или пользователь (только бэкофис)

Активные фильтры показываются плашками над таблицей: нажмите на плашку, чтобы убрать фильтр. Счётчики над фильтрами показывают общее число, число за последние 24 часа, сколько было действий бэкофиса и сколько разных людей действовало.


🪝 Отправка на ваш собственный сервер

След команды не обязательно читать на этой странице. Настройки команды → Вебхуки направляют его на URL, которым вы владеете: каждая запись, на которую вы подписаны, приходит в виде подписанного JSON-запроса POST в тот момент, когда она записана.

Вебхук несёт ровно то, что показывает эта страница, и ничего больше: те же строки, те же поля, за вычетом IP-адреса, который никогда не покидает панель. Полная настройка, формат данных и проверка подписи: Outgoing Webhooks.


⏳ Хранение

Записи хранятся в скользящем окне (по умолчанию 180 дней), а более старые автоматически удаляются. След только дополняется: записи никогда не редактируются постфактум.