Инструменты администрирования и контроля
Помимо повседневных функций, в TSync есть набор административных консолей, которые следят за здоровьем, историей и безопасностью системы. Они не нужны ежедневно, но полезно знать, что они есть и на какие вопросы отвечают.
Здоровье и готовность к релизу
/admin/tsync_health — единая панель, проверяющая, что система настроена правильно: модули в согласованном
состоянии, цепочки финансов/бухгалтерии связаны, миграции применены, нет ли пробелов в конфигурации. Она
запускает те же проверки качества, что и при сборке релиза, но здесь в режиме только чтения,
рекомендательно (предупреждения и инфо, никогда не блокирует). Открывайте после обновления или когда что-то
кажется не так, чтобы быстро получить ответ «всё ли связано?».
Раздел «Готовность релиза» загружается через несколько секунд после остальной страницы. Так задумано: его подготовка запускает полный набор релизных проверок по всем файлам, и это занимает намного больше времени, чем вся остальная страница вместе взятая. Вместо того чтобы заставлять вас ждать всю страницу, TSync сразу показывает остальное и заполняет этот раздел, когда он готов — пока идёт работа вы видите короткую пометку «выполняется релизный контроль» и заполнитель. Если раздел получить не удалось, система об этом скажет, а не будет крутиться бесконечно.
Файлы, оставшиеся от старых версий
Обновление добавляет и заменяет файлы — но никогда не удаляет. Поэтому файл, убранный из продукта три версии назад, остаётся на вашем сервере навсегда. Им уже ничто не пользуется, но он там.
У этого было неожиданное следствие: эта страница иногда сообщала о проблемах, которых в продукте нет. Так и произошло — предупреждение безопасности указывало на файл, убранный из продукта тремя месяцами ранее. Его искали в коде и в архивах; его не было ни там, ни там. Он был только на том сервере.
Теперь раздел перечисляет файлы, которые есть на вашем сервере и которых не было в поставленном архиве.
Оставшийся файл .php показывается как предупреждение, всё остальное — как информация.
TSync ничего не удаляет. Он говорит, что нашёл и где; удаляете вы, на сервере, когда убедитесь. Обновление, которое само удаляет файлы, — именно та операция, которую нельзя отменить.
Двух вещей в списке не будет никогда, чтобы он оставался читаемым: рабочих файлов самой системы (журналы, кэш, ваша конфигурация с паролями) и отдельно установленных модулей — модуль, который вы поставили сами, не остаток, и предложить его к удалению было бы худшей возможной ошибкой.
Внешние интеграции — какие ещё отвечают
На той же странице есть панель Внешние интеграции: по строке на каждую интеграцию, с которой умеет разговаривать ваша установка — ANAF, налоговая, банк, CRM, провайдер сообщений — с результатом последнего реального вызова этой интеграции, временем вызова и его назначением.
Пока вы смотрите на страницу, она не делает ни одного внешнего вызова. Опрашивать всех провайдеров при каждой загрузке — значит создавать трафик самим фактом просмотра, к сервисам с ограничением частоты обращений; страница здоровья не должна становиться той самой проблемой, о которой сообщает.
Три состояния, и смысл — в третьем:
| Состояние | Что означает |
|---|---|
| работает | последний вызов ответил |
| не отвечает | последний вызов не удался — число рядом показывает, сколько неудач подряд |
| не проверялась | с этой установки её никто никогда не вызывал |
«Не проверялась» — то, что нужно читать внимательно. Если никто не нажимает кнопку, отсутствие сбоев не является доказательством работоспособности — именно так у всех клиентов незаметно пережил смену API уже мёртвый поисковый endpoint. Строка, которая отвечала, но очень давно, тоже помечается.
Список строится из интеграций, которые продукт объявляет, а не из того, что использовалось, поэтому интеграция, которой никто не пользуется, всё равно видна. Ничего из содержимого вызова не сохраняется — ни адреса, ни тела запроса или ответа; только результат, короткий признак состояния и метки времени.
Консоль безопасности
Центр конфигурации → Управление и аудит → Консоль безопасности (а также в меню «Настройки»). Один экран, который собирает то, что сообщают уже существующие механизмы безопасности: анти-скрейпинг, активные блокировки, аутентификация, сессии, права, публичные маршруты, доступ к данным, вызовы инструментов агентами и последние записи аудита.
Она ничего не запрещает. Страница только читает — она не блокирует пользователя, не закрывает сессию и не останавливает запрос. Она показывает, что происходит, чтобы решали вы.
Каждая карточка прямо говорит, что из четырёх верно:
| читает | источник есть, и вот что он сообщает |
| выключено | механизм есть и выключен — и это сам по себе ответ |
| сообщать нечего | он включён и действительно ничего не нашёл |
| не построено | источника пока нет, и карточка говорит, что для него нужно |
Последнее важнее, чем кажется. «0 отклонений CSRF» и «никто не считает отклонения CSRF» выглядят на экране одинаково и означают противоположное — и успокаивающее из них ложное. Две карточки честно помечены не построено: отклонения CSRF и целостность файлов.
Общая картина считает выключено и не построено отдельно, потому что первое — ваше решение, а второе — наше.
Кто её видит: администраторы. Остальным выдаётся право Консоль безопасности → Просмотр.
Доступ в кабинеты
Кто может войти в клиентский портал — один список, поддерживаемый в актуальном виде, с действиями, которые его приводят в порядок. В боковом меню под Клиенты.
Каждый контакт показан со своим клиентом, экономическим партнёром за ним и двумя вещами, которых не видно с карточки клиента, пока её не откроешь: состояние доступа и когда он входил в последний раз.
Три состояния, а не «есть доступ / нет»
- Активен — контакт активен и имеет пароль. Он действительно может войти.
- Заблокирован — войти не может, что бы ещё ни было верно.
- Без пароля — активен, но пароля нет, поэтому войти всё равно не может.
Третье состояние — причина, по которой этот экран существует. «Разрешить доступ» тому, у кого нет пароля, не даёт ничего — поэтому система скажет вам, кому она не помогла, и предложит кнопку, которая действительно решает вопрос: Отправить письмо для установки пароля.
Действия
Отмечаете строки и выбираете. Каждое действие сначала спрашивает и называет, скольких контактов оно коснётся, а затем сообщает, сколько строк изменилось на самом деле.
- Заблокировать доступ — войти снова нельзя, пока вы не разрешите.
- Разрешить доступ — с предупреждением выше для контактов без пароля.
- Завершить сеансы — см. ниже.
- Отправить письмо для установки пароля — только выбранным контактам без пароля.
- Удалить пароль — контакт остаётся со всей своей историей; просто войти нельзя, пока не задан новый пароль.
«Заблокировать» и «завершить сеансы» — разные вещи
Блокировка останавливает следующий вход. Тот, кто уже вошёл, остаётся внутри, пока не истечёт его сеанс. Завершить сеансы закрывает открытые в этот момент сеансы.
Если нужно вывести человека немедленно, используйте оба действия.
На некоторых установках сеансы хранятся так, что этот экран до них не дотягивается. Тогда он прямо об этом скажет, а не заявит, что кого-то отключил, — блокировка при этом работает.
Кто это видит
Любой, у кого есть право на клиентов: просмотр показывает список, редактирование включает действия. Никаких новых прав настраивать не нужно.
Всё, что делают эти действия, записывается в журнал аудита — кто сделал и на скольких контактах.
Журнал аудита
/admin/tsync_audit — запись только на добавление важных изменений: кто изменил настройку, кто
провёл или сторнировал бухгалтерскую проводку, кто запустил восстановление и т. д., со старыми и новыми
значениями. Это место, где вы узнаёте «кто это изменил и когда?». Записи никогда не редактируются и не
удаляются.
Контроль дизайна
/admin/tsync_design_governance — поддерживает единообразие интерфейса. Он измеряет «дрейф» UI
относительно принятого базового уровня (случайные inline-стили, отступы вне шкалы, «сырые» цвета вместо
токенов бренда), показывает его по файлам и позволяет администратору задать новый базовый уровень после
очистки. Это инструмент сопровождения для единообразия вида — на ваши данные он не влияет.
Безопасность агентов (основа)
/admin/tsync_agent_security — задел для безопасной автоматизации/ИИ. Содержит политику только для
чтения, шлюз инструментов с запретом по умолчанию (любое автоматическое действие логируется и должно быть
разрешено) и правило, что весь внешний контент — веб-страницы, письма, загруженные файлы, банковские выписки —
считается недоверенными данными, а не инструкциями. По умолчанию инертен (автоматические действия не
выполняются); он существует, чтобы при включении автоматизации она управлялась с первого дня. См. также
Уровень Intelligence.
Качество операционных данных
/admin/tsync_data_quality — что продукт знает о состоянии ваших собственных данных: способы оплаты, за
которыми нет финансового счёта, метрика, переставшая обновляться, записи, противоречащие друг другу. Каждая
находка несёт важность — критично, предупреждение или информация — и относится к одному из
четырёх компонентов: Целостность данных (DIS), Операционная согласованность (OCS), Надёжность
источника (SRI) и Отсутствующие данные (MDI).
Страница теперь на вашем языке, включая важность. До v11.2.1 важность печаталась «сырой», по-английски, внутри цветной плашки, которую вы читаете одним взглядом, — а это ровно то место, где переводить некогда. Названия компонентов теперь идут первыми, а сокращение остаётся в скобках: аббревиатура что-то говорит только тому, кто и так знает.
Находка отсюда часто оказывается причиной симптома, который вы ищете в другом месте. «Способы оплаты без финансового счёта» — это, например, причина, по которой платежи не двигают казначейство.
Инспектор событий
/admin/tsync_event_inspector — журнал межмодульных событий: что было поднято, когда, с какими данными и
какие слушатели ответили. Используйте его, когда автоматизация не сработала и нужно понять, случилось ли
событие вообще.
Повторный запуск события теперь требует настоящего подтверждения и выполняется через POST. Повтор заново поднимает событие на шине и запускает всех его слушателей — он может создавать записи, отправлять сообщения и проводить проводки. До v11.2.0 это была обычная ссылка, поэтому любая страница, случайно открытая администратором, могла запустить повтор под его сеансом — без клика и без чего-либо на экране. Подтверждение теперь говорит, что произойдёт, а не спрашивает «вы уверены».
Очередь неудавшихся заданий
/admin/tsync_dead_jobs — фоновые задания, сдавшиеся после последней попытки. Эту страницу открывают,
когда что-то перестало происходить в фоне.
Два действия, и их подтверждения теперь говорят, что делает каждое: вернуть в очередь («они снова встанут в очередь и выполнятся при следующем проходе cron») и удалить навсегда («они будут удалены безвозвратно, отменить нельзя»). Счётчик пишет неудавшихся заданий: 1, а не форму множественного числа, верную только по-английски.
Эти консоли — на вашем языке
Здоровье модулей, Инспектор событий, Качество операционных данных, Безопасность агентов и очередь неудавшихся заданий поставлялись на английском в продукте, в котором в остальном работают по-румынски и по-русски. Теперь они переведены, включая слова состояния: green / amber / red выводились как есть, и страница требовала от оператора знать, что «amber» значит «требует внимания», — название цвета, по-английски, среди в остальном переведённых подписей.
Эти консоли — для владельцев/администраторов. Кто может открыть каждую, определяется правами; в режиме хаба к ним переходят из Центра конфигурации.