Логирование
На этой странице мы расскажем вам о работе с логированием на портале и разберем следующие вопросы:
Что такое логи и зачем они нужны
Логирование – это процесс фиксации изменений, которые происходят в системе при взаимодействии с ней.
Логи помогают контролировать изменения и видеть ответственных за их появление. Логирование ошибок помогает в диагностике проблем.
Как найти логи
Логи расположены в Административной части портала в разделе Логи
Как понять какие логи мне нужны
Что ищем | Где смотреть |
---|---|
Попытки авторизации пользователей | Лог авторизации |
Изменения конфигурации кармы: кто изменил настройки и какие параметры были изменены | Лог баллов |
Изменения в контенте: кто и что изменил в новости, мероприятии, уроке, учебном плане, тестировании | Лог действий |
Изменения связанные с импортом паролей: кто и когда производил импорт, кому был изменен пароль и статус загрузки | Лог импорта паролей |
Действия пользователей, осуществлённые во время маскировки под другими пользователями | Лог маскировки |
Данные об ошибках: время возникновения, страница, код ошибки | Лог ошибок |
Изменения в личных карточках пользователей, удаление и восстановление пользователей на портале. Кто кого удалил, деактивировал, восстановил. | Лог пользователей |
События, связанные с работой с сервисами | Лог сервисов |
Детально функционал описан ниже, в соответствующих разделах документации.
Лог авторизации
Раздел доступен пользователям с активным свитчером Логирование \ Административная часть
В раздел записывается информация о неуспешных и успешных попытках входа в систему, отсортированная по убыванию их даты. На одной странице выводится 20 записей логов, если записей больше, появляется пагинация.
Запись об авторизации появляется в таблице логов только если пользователь вводил логин и пароль для авторизации или если платформа Мотивити запрашивала данные у сторонней системы для его аутентификации. Если для авторизации пользователя использовались куки сессии пользователя, сохранённые в его браузере, запись в логах не появляется
При неуспешной авторизации через ldap будет создаваться 2 лога, т.к система сначала пытается авторизовать пользователя через ldap, а потом через Локальную авторизацию, например, может провалиться попытка авторизации через ldap, но успешно пройти Локальная авторизация, при этом попытки для каждого типа авторизации считаются независимо, т.е. если авторизация не прошла ни по ldap ни по локальной авторизации, то в логе будет 2 неудачных строки с разным типом авторизации с одинаковым номером попытки
Если же пользователь успешно авторизовался через ldap, то локальная уже не будет проверяться и соответственно вторая запись в логе не появится
Логи хранятся в течение 180 дней. Предупреждение об этом располагается вверху страницы
Блок фильтрации состоит из:
Выпадающие списки фильтрации по доступным параметрам:
Фильтрация записей в заданный диапазон логирования, по дате и времени – формат: с “ДД.ММ.ГГГГ ЧЧ:ММ” по “ДД.ММ.ГГГГ ЧЧ:ММ”
Учётная запись – доступен множественный выбор из списка пользователей
Статус – успешно или неуспешно
Кнопка Применить – по нажатию применяются параметры и осуществляется фильтрация
Кнопка Сбросить – появляется после выполненной фильтрации, по нажатию фильтрация сбрасывается и кнопка вновь скрывается
Кнопка Сохранить xlsx – по нажатию выгружается таблица логов в файле формата .xlsx. Если ранее к таблице были применены фильтры, в таблицу выгружаются только отфильтрованные записи
Таблица с записями логов имеет следующую структуру:
ID – уникальный номер записи
Дата авторизации – дата и время попытки авторизации
Учётная запись:
Если при попытке авторизации был введён логин, который можно сопоставить с имеющейся на платформе неудалённой учётной записью, выводится:
Аватар пользователя
Имя и фамилия пользователя – под которым пытались авторизоваться, где “имя и фамилия” это активная ссылка на редактирование пользователя в панели администрирования
Почта
Если был введён логин, которому не соответствует неудалённая учётная запись пользователя, выводится надпись Пользователь не обнаружен
Логин – данные, которые были введены в поле Логин при авторизации. Пустое если аутентификация происходила при помощи OAuth
Тип авторизации:
Локальная – при вводе логина и пароля, который хранится в БД Мотивити
2FA – при подключенном втором факторе аутентификации на Мотивити. В этом случае по пользователю в логах будет отображено две строки: одна про успешную локальную авторизацию, вторая - про успешное или неуспешное прохождение второго фактора
ldap – при использовании аутентификации через ldap/s
OAuth/<Имя провайдера> – при использовании для аутентификации одного из методов OAuth, где имя провайдера может быть KeyCloak | AD FS | OKTA | Azure
Статус:
Успешно – если пользователь был авторизован в Мотивити
Неуспешно – если:
Введённый пароль был неверен
илиВнешняя система прислала отказ в аутентификации пользователя и он не был авторизован в Мотивити
илиПользователь ввёл пароль неверно 8 раз, был временно заблокирован, но продолжает попытки авторизоваться
илиПользователь пытается авторизоваться под удалённым или неактивным пользователем
Номер попытки
Номера попыток для OAuth авторизации не записываются
Номера попыток на первый и второй фактор авторизации (Локальная и 2FA авторизация) считаются отдельно
Если пользователь был временно заблокирован после неудачного ввода логина и пароля (8 попыток подряд) и спустя время разблокировки начал вводить пароль снова, счётчик попыток начинает считаться с 1
Если пользователь продолжает попытки авторизации после того, как был временно заблокирован, до истечения срока блокировки, счётчик попыток продолжается ( из-за специфики блокировки авторизации могут некорректно считаться номера неудачных попыток в случае, если пользователь неудачно ввёл пароль 8 раз и был заблокирован, а потом вернулся до конца разблокировки и ввёл логин пароль ещё раз)
IP-адрес – ip-адрес, с которого была произведена попытка авторизации
Тип устройства
Мобильный – при авторизации со смартфона/планшета
Компьютер – при авторизации с компьютера или если авторизация происходила в браузере мобильного устройства работающего в режиме версии для ПК
Браузер
<Имя браузера и его версия> – при авторизации через браузер
Мобильное приложение – при авторизации через мобильное приложение
Лог баллов
(1) Столбец ID; (2) Столбец Дата события; (3) Столбец Инициатор; (4) Столбец Действие; (5) Столбец Цель; (6) Столбец Изменение
На портале предусмотрено логирование всех действий администраторов по изменению конфигурации баллов:
При изменении количества баллов за обучение и баллов кармы по активностям пользователей на портале – см. раздел Как настроить конфигурацию баллов
И, при наличии модуля Каталог призов, при смене валюты каталога призов
Инструмент располагается в разделе Логи – Лог баллов.
Фильтрация и сортировка не предусмотрены.
Поля в таблице:
ID – уникальный номер записи
Дата события – дата и время внесения изменений
Инициатор – имя пользователя, который внес изменения. Активная ссылка в ЛК пользователя в Публичной части портала
Действие:
Обновил
Цель – название параметра, в котором внесены изменения.
Изменения – обновление, которое совершил администратор в формате “Название поля: Было → Стало”
Пример: Изменено значение параметра "Валюта для покупки призов": Старое - Из кармы, Новое - Из обучения
Таблица логов не выгружается в .xlsx-файле.
Лог действий
(1) Поле поиска; (2) Фильтр по инициатору события; (3) Фильтр по действию; (4) Кнопка Сохранить xslx; (5) Поля для указания временного промежутка поиска; (6) Кнопка Применить; (7) Столбец ID; (8) Столбец Дата события; (9) Столбец Инициатор; (10) Столбец Действие; (11) Столбец Цель;
(12) Столбец Изменения; (13) Столбец Комментарий
Располагается в разделе Логи – Лог действий и фиксирует изменения в контенте и в данных пользователей.
Записи внесены в таблицу и расположены в хронологическом порядке по убыванию даты изменений.
Блок поиска и фильтрации состоит из:
Выпадающие списки фильтрации по доступным параметрам:
Фильтрация записей в заданный диапазон логирования, по дате и времени – формат: с “ДД.ММ.ГГГГ ЧЧ:ММ” по “ДД.ММ.ГГГГ ЧЧ:ММ”.
Инициатор события – доступен множественный выбор из списка пользователей
Действие – доступен множественный выбор из списка возможных действий
Поле ввода Поиск. Поиск осуществляется по следующим параметрам:
id записи лога
id сущности
Кнопка Применить – по нажатию применяются параметры и осуществляется поиск и фильтрация
Кнопка Сбросить – появляется после выполненного поиска/фильтрации, по нажатию поиск и фильтрация сбрасываются и кнопка вновь скрывается
Кнопка Сохранить xlsx – по нажатию выгружается таблица логов в файле формата .xlsx
Поля в таблице:
ID – уникальный номер записи
Дата события – дата и время внесения изменений
Инициатор
Имя и фамилия пользователя, который внес изменения через интерфейс платформы или был указан в запросе метода публичного API, где “имя и фамилия” – это активная ссылка в ЛК пользователя в публичной части портала, а кнопка “карандашик“ – ссылка на редактирование пользователя в панели администрирования
Система – если изменение было внесено при помощи вызова метода публичного API, в котором нельзя указать пользователя, вносившего изменения
Действие – действие, которое совершил пользователь:
Обновил
Создал
Удалил
Восстановил
Отменил
Деактивировал
Активировал
Обновил пароль
Обновил назначения
Обновил доступы
Цель – объект изменений
ФИО пользователя, для которого внесены изменения, где “имя и фамилия” – это активная ссылка в ЛК пользователя в публичной части портала, а кнопка “карандашик“ – ссылка на редактирование пользователя в панели администрирования
Название материала, в котором внесены изменения, где “название материала” – это активная ссылка на страницу материала в публичной части портала, а кнопка “карандашик“ – ссылка на редактирование материала в панели администрирования
Механика работы активной ссылки “Название материала“:
Если материал удален – ссылка не отображается
Если материал удален и неактивен – ссылка ведет на страницу материала в публичной части портала, но раз материал неактивен, отображается 404 ошибка
Если материал удален и активирован – ссылка ведет на страницу материала в публичной части портала
Важно! Для объектов, у которых нет своих страниц в публичной части (неактивен, удален) или в панели администрирования (удален и его нельзя восстановить), ссылка или кнопка “карандашик“ не выводятся.
Изменение – список данных, которые были изменены в формате “Название поля: Было → Название поля: Стало”, при этом значение “Было” выводится на сером фоне, а “Стало” – на зеленом
Комментарий – выводится дополнительная информация, например, информация о вызванном методе публичного API, с помощью которого произошло изменение данных пользователя
Лог действий Опросы
В логе действий, где Целью являются Опросы, в поле Изменения логируются следующие значения:
Действие | Изменения | Особенности |
---|---|---|
Создание/обновление/удаление опроса в модуле Опросы |
|
|
Создание/обновление опросов на вкладке Опрос в модулях где он представлен |
|
|
В логе действий, где Целью являются вопросы из базы вопросов в модуле Опросы, в поле Изменения логируются следующие значения:
Действие | Изменения | Особенности |
---|---|---|
Создание/обновление/удаление вопросов из базы вопросов |
|
|
Создание/обновление вопросов на вкладке Опрос в модулях где он представлен |
|
|
Лог действий Тестирования
В логе действий, где Целью являются Тестирования, в поле Изменения логируются следующие значения:
Действие | Изменения | Особенности |
---|---|---|
Создание/обновление тестирования в модуле Тестирования |
|
|
Удаление тестирования в модуле Тестирования | – | В логе удаления тестирования запись в поле Изменение не происходит. Логируется только факт удаления. |
Восстановление тестирования в модуле Тестирования |
| При восстановлении тестирования логируется изменение Удалил и Тестирование активно, т.к. при восстановлении тестирование деактивируется |
В логе действий, где Целью являются вопросы из базы вопросов в модуле Тестирования, в поле Изменения логируются следующие значения:
Действие | Изменения | Особенности |
---|---|---|
Создание/обновление вопросов из базы вопросов |
|
|
Лог действий Квесты
Логируются все изменения, производимые с модулем в административной части, кроме изменений связанных со списком студентов квеста, т.к его логирование может сильно уменьшить производительность
Лог действий Коннект
Логируются все изменения, производимые с модулем в административной части Общение → Коннект:
ID – уникальный номер записи
Дата события – дата и время внесения изменений
Инициатор – имя и фамилия пользователя, который внес изменения
Действие – Обновил
Цель – Коннект Политика и соглашение или Коннект Служебный чат и кнопка “карандашик“, по нажатию на которую происходит переход на соответствующую вкладку настроек в административной части
Изменение – список данных, которые были изменены в формате “Название поля: Было → Название поля: Стало”, при этом значение “Было” выводится на сером фоне, а “Стало” – на зеленом
Комментарий – не заполняется
Лог действий Цели
В лог действий добавляются записи для каждого события по созданию, изменению, завершению, обновления целей через публичное API.
ID
Дата события
Инициатор – имя и фамилия пользователя, который был указан в запросе метода публичного API в
authorId
, где “имя и фамилия” – это активная ссылка в ЛК пользователя в Публичной части портала, а кнопка “карандашик“ – ссылка на редактирование пользователя в Панели администрированияДействие
Обновил – для действий по изменению, подтверждению, завершению целей (данные по изменению значений цели не логируются)
Создал – для создания целей
Удалил – для удаления целей
Цель – название цели, в которую были внесены изменения и ФИО пользователя, кому цель принадлежит, в виде “Цель: название цели, Пользователь: ФИО пользователя”
Изменение – список данных, которые были изменены по цели, в формате “Название поля: Было → Название поля: Стало”, при этом значение “Было” выводится на сером фоне, а “Стало” – на зеленом
Комментарий – API, созданных и изменённых через публичный API целей
Лог действий Фотоотчёты
Логируются все изменения, производимые с модулем в административной части.
Логируемые типы действий:
Создание
Обновление (редактирование)
Удаление
Восстановление
Сущности для логирования:
Шаблон фотоотчёта
Критерии
Отделы
Инструкция
Лог действий Статусы доступности
Логируются все изменения, производимые со статусом доступности в административной части.
ID
Дата события
Инициатор — ФИО пользователя, которым были произведены изменения
Действие:
Обновил — для установки, изменения, удаления статуса доступности
Цель – ФИО пользователя, для которого внесены изменения
Изменение — список данных, которые были изменены в формате «Название поля: Было → Название поля: Стало», при этом значение «Было» выводится на сером фоне, а «Стало» — на зелёном
Лог действий Вебхуки
Логируются все изменения, производимые с вебхуками в административной части.
Логируемые типы действий:
Создание
Изменение
Удаление
Лог действий с пользователем
Логируются изменения данных пользователей через интерфейс платформы или через успешные вызовы методов публичного API, которые произвели изменения данных пользователя, например, вызов методов для начисления и снятия бейджей (см. https://motivityy.atlassian.net/wiki/spaces/Documentation/pages/5736180/API#%D0%91%D0%B5%D0%B9%D0%B4%D0%B6%D0%B8)
ID
Дата события
Инициатор
Действие
Цель – ФИО пользователя, для которого внесены изменения
Изменение – список данных, которые были изменены, например, в “Было“ отображается список бейджей, который был у пользователя до изменений, в “Стало“ – список бейджей после изменений
Комментарий – {метод} {URL} {ip-адрес, с которого был вызван метод}, например, POST %адрес_платформы%/public/api/v1/badge/{badgeId}/assign 66.435.56.144
Лог действий LDAP/AD
Логируются все изменения, производимые с модулем в административной части Настройки → LDAP/AD:
ID – уникальный номер записи
Дата события – дата и время внесения изменений
Инициатор – имя и фамилия пользователя, который внес изменения через интерфейс платформы, где “имя и фамилия” – это активная ссылка в ЛК пользователя в публичной части платформы, а кнопка “карандашик“ – ссылка на редактирование пользователя в панели администрирования
Действие – действие, которое совершил пользователь:
Обновил – при изменении данных хоста
Создал – при создании нового хоста
Удалил – при удалении хоста
Цель – страница Настройки → LDAP/AD, активная ссылка на неё в административной части платформы
Изменение – список данных, которые были изменены в формате “Название поля: Было → Название поля: Стало”, при этом значение “Было” выводится на сером фоне, а “Стало” – на зеленом
Значение поля Пароль служебной учётной записи маскируется символами “*”
Комментарий – не заполняется
Лог импорта паролей
Располагается в разделе Логи → Лог импорта паролей и фиксирует изменения всех запросов связанных с импортом паролей:
Кто производил импорт — ФИО пользователя
Когда происходил импорт — дата и время импорта
Кому загрузили пароль (на каждого пользователя отдельная строка) — ФИО пользователя и его УИ
Статус загрузки — Успешно / Неуспешно
Сами пароли, которые были загружены в систему, не отслеживаются в логировании
Раздел импорта паролей доступен пользователям с включенным разрешением роли Личный кабинет — Управление пользователями.
Страница логов импорта паролей состоит из:
# — ID лога
— дата и время импорта в формате: ГГГГ-ММ-ДД ЧЧ:ММ:СС
— ФИО пользователя, который производил импорт. По клику переход на страницу пользователя в админпанели
— статус обновления пароля: Успешно / Неуспешно
— ФИО пользователя, которому загружали пароль
Фильтрация и сортировка не предусмотрены.
Лог исходящих вебхуков
Располагается в разделе Логи → Лог исходящих вебхуков и фиксирует данные обо всех отправленных вебхуках и полученных ответах на них (при наличии):
ID
Дата
Статус
Код — код ответа, если вебхук успешно отправлен / ошибка, если от сервера не поступил ответ
Вебхук
Триггер
Подробнее:
Запрос — текст отправленного запроса. Логируется адрес, на который был отправлен запрос,
header
иbody
запросаОтвет —
header
иbody
полученного ответа. Может быть пустым, есть от сервиса не пришёл ответ или при отправке произошла ошибка
Лог маскировки
Инструмент располагается в разделе Логи – Лог маскировки
В логе фиксируется, когда одни пользователи осуществляют маскировку под другими пользователями и выполняют под ними какие-то действия.
Записи вносятся в таблицу в хронологическом порядке по убыванию даты изменений.
Фильтрация не предусмотрена.
Поля в таблице:
ID – уникальный номер записи
Дата начала – дата и время совершение действия под маскировкой
Замаскированный пользователь – ФИО пользователя, который совершил маскировку. Активная ссылка в ЛК пользователя, в Публичной части портала.
Оригинальный пользователь – ФИО пользователя под которым замаскировались. Активная ссылка в ЛК пользователя, в Публичной части портала.
URL – Адрес куда ушёл запрос;
Тип запроса
Данные – список данных, которые отправил Замаскированный пользователь (предположительно в формате json)
Таблицу логов можно выгрузить в .xlsx-файл.
Как расшифровать лог маскировки
Поля и их описание | Пример | Объяснение |
---|---|---|
Url – адрес куда ушёл запрос, в котором можно отследить в каком разделе портала произошло действие и что было выполнено Тип запроса – возможны следующие значения:
Данные – список данных, которые отправил Замаскированный пользователь в формате json, который может состоять из:
|