К статье
Практический материал

Администрирование · 10 мин

Как посмотреть список активных пользователей в 1С 8.3

Как посмотреть список активных пользователей в 1С 8.3: консоль кластера, журнал регистрации, мониторинг сеансов, внешние обработки. Пошаговые инструкции и разбор ошибок.

Список активных пользователей нужен администратору в десятках ситуаций: перед обновлением конфигурации, при блокировке базы для обслуживания, при поиске «зависшего» сеанса, который держит монопольный доступ, или при проверке, кто сейчас работает с документами. В 1С:Предприятии 8.3 есть несколько способов получить такой список, и выбор зависит от режима работы базы — файловой или клиент-серверной.

В клиент-серверном варианте самый полный источник данных — консоль кластера серверов 1С:Предприятия. В файловом режиме используют встроенные механизмы самой информационной базы: журнал регистрации, функцию «Активные пользователи» в типовых конфигурациях или программные методы. Ниже разобраны все рабочие варианты с конкретными шагами.

Важно понимать разницу между понятиями «сеанс» и «соединение». Один пользователь может держать несколько сеансов (например, тонкий клиент и сеанс фонового задания), а сеанс может не иметь активного соединения в конкретный момент. Поэтому список в консоли кластера и список внутри базы могут отличаться — это нормально.

Как посмотреть активных пользователей через консоль кластера серверов

Консоль кластера — основной инструмент администратора клиент-серверной 1С. Она устанавливается вместе с сервером 1С:Предприятия и называется «Администрирование серверов 1С Предприятия». Запустить её можно из меню «Пуск» на сервере или на компьютере администратора, если установлен клиентский компонент администрирования.

Порядок действий: откройте консоль, в дереве слева разверните нужный центральный сервер, затем ветку «Кластеры» → «Локальный кластер» → «Информационные базы». Выберите нужную базу и перейдите в подраздел «Сеансы». В рабочей области появится таблица со всеми текущими сеансами: имя пользователя, приложение (тонкий клиент, веб-клиент, фоновое задание, COM-соединение), время начала сеанса, последняя активность, объём прочитанных и записанных данных.

Для доступа к консоли нужны права администратора кластера или администратора информационной базы. Если при подключении консоль требует логин и пароль, а вы их не задавали, попробуйте оставить поля пустыми — по умолчанию администратор кластера может отсутствовать.

Порядок действий в консоли кластера
  1. 1
    Откройте оснастку «Администрирование серверов 1С Предприятия»
  2. 2
    Разверните сервер → Кластеры → Локальный кластер → Информационные базы
  3. 3
    Выберите базу и откройте подраздел «Сеансы»
  4. 4
    Изучите список: пользователь, приложение, время начала, активность
  5. 5
    При необходимости завершите сеанс через контекстное меню

Как увидеть активных пользователей внутри типовой конфигурации

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

Путь может немного отличаться в зависимости от конфигурации и версии, но обычно это: «Администрирование» → «Обслуживание» → «Активные пользователи» (иногда «Администрирование» → «Поддержка и обслуживание»). Откроется список сеансов с указанием пользователя, компьютера, режима запуска и времени входа. Из этого же списка администратор может при необходимости завершить сеанс пользователя.

Учтите ограничение: пользователь без прав администратора обычно видит только свой сеанс или не видит раздел вовсе. Для полного списка нужна роль «Администратор системы» или «Полные права».

Как получить список сеансов программно

Если нужно вывести список активных пользователей в собственной обработке, отчёте или регламентном задании, используйте метод глобального контекста ПолучитьСеансыИнформационнойБазы(). Он возвращает массив объектов типа «СеансИнформационнойБазы» со свойствами: имя пользователя, имя компьютера, номер сеанса, приложение, начало сеанса, время последнего обращения.

bsl
Сеансы = ПолучитьСеансыИнформационнойБазы();
Для Каждого Сеанс Из Сеансы Цикл
    Сообщить(Строка(Сеанс.Пользователь) + " | " + Сеанс.ИмяПриложения + " | " + Сеанс.НачалоСеанса);
КонецЦикла;

Метод работает и в файловом, и в клиент-серверном режиме, но требует права «Администрирование» либо выполнения в привилегированном режиме. Для завершения конкретного сеанса программно применяется метод ЗавершитьСеансИнформационнойБазы, однако использовать его стоит осторожно: принудительный разрыв сеанса во время записи данных может оставить транзакцию незавершённой.

Как узнать, кто работал в базе, через журнал регистрации

Журнал регистрации показывает не текущий момент, а историю: кто входил в базу, когда выходил, какие ошибки возникали. Это полезно, когда нужно выяснить, кто работал в базе вчера или кто запускал конкретную операцию.

Откройте журнал: в режиме 1С:Предприятие — «Администрирование» → «Обслуживание» → «Журнал регистрации», в конфигураторе — меню «Администрирование» → «Журнал регистрации». Установите отбор по событию «Сеанс. Аутентификация» или «Сеанс. Начало» и нужному периоду. В списке отобразятся все входы пользователей с указанием времени, компьютера и способа подключения.

Ограничение метода: журнал регистрации не показывает, активен ли сеанс прямо сейчас. Пользователь мог войти утром и до сих пор работать, а мог выйти через минуту. Для текущего состояния используйте консоль кластера или раздел «Активные пользователи».

Особенности файлового режима и веб-сервера

В файловой базе, опубликованной на веб-сервере, сеансы обслуживаются через веб-расширение, и консоль кластера недоступна. В этом случае остаются три варианта: встроенный отчёт «Активные пользователи», программный метод ПолучитьСеансыИнформационнойБазы() и сторонние обработки мониторинга, которые строятся на том же методе, но добавляют автообновление и фильтры.

Для локальной файловой базы, к которой подключаются по сети напрямую, точный список сеансов доступен только изнутри самой базы. Косвенный признак — наличие файла блокировок 1Cv8.1CL в каталоге базы, но он не покажет, кто именно работает.

Сравнение способов просмотра

Консоль кластера

Самый полный список сеансов и соединений, но только для клиент-серверного режима и с правами администратора кластера

Отчёт «Активные пользователи»

Работает внутри типовой конфигурации без доступа к серверу; требует прав администратора в базе

ПолучитьСеансыИнформационнойБазы()

Гибкий программный вариант для обработок и регламентных проверок; нужны административные права

Журнал регистрации

Показывает историю входов, но не текущую активность сеансов

Частые ошибки и ограничения

Наиболее частая проблема — пустой список сеансов или сообщение об ошибке доступа. Причины обычно такие: недостаточно прав (роль без администрирования), консоль подключена не к тому кластеру или не к тому порту агента сервера, либо сеансы пользователей работают на другом рабочем сервере кластера.

Вторая типичная ситуация — «зависшие» сеансы, которые видны в списке, хотя пользователь давно закрыл программу. Такое бывает при аварийном завершении клиента: сервер держит сеанс до истечения таймаута. Перед обновлением конфигурации такие сеансы приходится завершать принудительно через консоль кластера.

Типичные ошибки
01
Искать активных пользователей файловой базы в консоли кластера — консоль работает только с клиент-серверным режимом
02
Судить о текущей активности по журналу регистрации — он фиксирует события входа, а не состояние сеанса сейчас
03
Завершать сеансы без предупреждения пользователей — несохранённые данные будут потеряны
04
Пытаться открыть «Активные пользователи» без административных прав — раздел будет пуст или недоступен

Как проверить результат и автоматизировать контроль

Чтобы убедиться, что список корректен, сверьте данные двух источников: консоли кластера и отчёта «Активные пользователи». Совпадение по числу сеансов и пользователям — признак того, что данные актуальны. Расхождение в один-два сеанса обычно объясняется фоновыми заданиями или сеансами отладки.

Для регулярного контроля настройте регламентное задание, которое вызывает ПолучитьСеансыИнформационнойБазы() и, например, фиксирует превышение допустимого числа сеансов или отправляет уведомление администратору. Это стандартная практика для баз с большим числом пользователей.

Контрольные точки

Как проверить результат

Число сеансов в консоли кластера и в отчёте «Активные пользователи»
Норма

Значения совпадают или отличаются на сеансы фоновых заданий

Тревожный признак

Существенное расхождение — проверьте права и актуальность данных

Список пользователей перед обновлением
Норма

Остались только сеансы администратора и фоновые задания

Тревожный признак

Есть активные пользовательские сеансы — обновление будет заблокировано

Время последней активности сеанса
Норма

Свежие отметки у работающих пользователей

Тревожный признак

Давняя активность у «висящего» сеанса — кандидат на завершение

Итог

Что важно запомнить

Полный список активных сеансов в клиент-серверной базе смотрят в консоли кластера, в файловой и типовых конфигурациях — через отчёт «Активные пользователи» или метод ПолучитьСеансыИнформационнойБазы(). Журнал регистрации показывает историю входов, а не текущую активность. Завершайте чужие сеансы только после предупреждения пользователей.

Частые вопросы

Почему список активных пользователей пуст, хотя люди работают?

Чаще всего причина в правах: без роли администратора отчёт «Активные пользователи» показывает только ваш сеанс. Также проверьте, что консоль кластера подключена к правильному серверу и рабочему процессу, а база выбрана именно та, в которой работают пользователи.

Можно ли посмотреть активных пользователей без прав администратора?

Полный список — нет. Обычный пользователь видит максимум собственный сеанс. Это осознанное ограничение платформы: информация о сеансах относится к административным данным. Запросите у администратора роль «Администратор системы» или выгрузку списка.

Чем сеанс отличается от соединения в консоли кластера?

Сеанс — это логическая сессия пользователя или фонового задания. Соединение — физический канал между клиентом и рабочим процессом сервера. У одного сеанса может быть несколько соединений или ни одного в момент простоя, поэтому счётчики в ветках «Сеансы» и «Соединения» различаются.

Как удалить «зависший» сеанс пользователя?

В консоли кластера выделите сеанс в списке и выберите «Удалить» в контекстном меню — сеанс завершится принудительно. В типовой конфигурации то же самое делает команда «Завершить сеанс» в списке активных пользователей. Предварительно убедитесь, что это действительно зависший сеанс, а не работающий сотрудник.

Видно ли в списке, какую базу использует пользователь на веб-сервере?

В консоли кластера сеансы отображаются в разрезе конкретной информационной базы, поэтому принадлежность видна сразу. Если базы опубликованы только через веб-сервер без кластера, ориентируйтесь на поле «Имя приложения» (веб-клиент) и данные журнала регистрации нужной базы.

Можно ли получать список активных пользователей автоматически по расписанию?

Да. Создайте регламентное задание, которое вызывает ПолучитьСеансыИнформационнойБазы() и сохраняет результат в регистр сведений или отправляет сводку администратору. Так реализуют мониторинг загрузки и контроль превышения числа лицензий без сторонних программ.