Логи системы

Материал из Центр поддержки системы бронировании
Версия от 20:26, 28 апреля 2016; Мария Горшенева (обсуждение | вклад) (Параметры таблицы логов)
Перейти к навигации Перейти к поиску
Пример окна логов системы Nemo.Travel

Логи системы — модуль системы онлайн-бронирования Nemo.Travel, содержащий подробный журнал действий и событий, происходящих в системе.

Назначение

Система онлайн-бронирования nemo.travel поддерживает гибкий инструмент логирования всех важных операций, происходящих в ней. Это помогает в кротчайшие сроки узнать детальную информацию практически по любому действию внутри системы. Интерфейс предоставляет широчайший выбор фильтров для выбора необходимых данных. Кроме того, имеется ряд предустановленных фильтров, которые выделены в отдельный блок и доступны по ссылкам.

Принцип работы

Логи в зависимости от типа бывают:

  • индексируемые - ошибки, предупреждения и пр. можно искать через фильтры в административной панели управления (/settings__logs)
  • неиндексируемые - сообщение и пр., доступны в теле одного лога-действия при открытии.

Если после отработанного скрипта не было собрано ни одного лога с индексацией - логи не сохраняются.

Принципы:

  • индексировать только действительно полезные логи (выбирать тип события правильно)
  • минимизировать объем данных, помещаемый в логи (например, не сохранять объект брони целиком)
Полная форма фильтров логов
Предустановленные фильтры логов

Для поиска и просмотра логов зайдите в раздел Для техподдержки → Логи.

Страница логов состоит из 3 основных частей:

  • Форма фильтров.
  • Блок предустановленных фильтров.
  • Таблица логов.

Записи логов разбиты постранично, чтобы перейти к следующей странице, нажмите ссылку След.. внизу таблицы.

Таблица логов

Таблица логов
Детальная информация лога
Пример детальной информации лога
  • Стобцы таблицы - параметры логов,
  • Строки таблицы - записи действий.

Каждая запись в таблице содержит детализацию. Чтобы открыть детали лога, разверните запись, нажав на нее.

Внимание! Логи поисковых запросов записываются в отдельную таблицу.

Параметры таблицы логов

  • Запуск — время запуска действия.
  • Пользователь — пользователь, запустивший действие.
  • Компонент — к какому компоненту системы относится данное действие.
  • Действие — формальное наименование действия.
  • Сообщение — короткое идентификационное сообщение для поиска логов.
  • Объект — любое вспомогательное числовое значение (например количество результатов в поиске).
  • Заказ — номер заказа.
  • Поиск — номер поиска.
  • Поставщик — формальное наименование задействованного поставщика услуг.
  • Время выполнения — численное значение (в секундах).
  • IP — адрес хоста, с которого запущено действие.
  • доп. — дополнительная информация по действию. Обычно в этом поле указывается статус действия («Успешно»/«Неуспешно»; количество ошибок, если они произошли; режим работы системы, в котором было выполнено действие).

Одна запись лога называется действием (по сути эквивалент одного php-скрипта). Действие содержит множество операций.

На каждое действие (лог) присутствует ссылка.

Дополнительно могут быть ссылки «Выгрузить архивом xml логи», «Просмотр заказа», «Просмотр результатов поиска», «Форма поиска» и др.

Данные

Данные — дополнительная информация о событии (операции). Там может быть тело XML-запроса, набор параметров, полное сообщение (если краткое обрезалось по длине) и т.п.

Поиск записей логов

Фильтры логов

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

  • Пользователь - идентификатор пользователя,
  • Заказ - идентификатор заказа,
  • Сообщение - короткое идентификационное сообщение для поиска логов,
  • Событие - перечень регистрируемых системой событий.

Чтобы получить доступ ко всем параметрам фильтра, нажмите кнопку Дополнительные фильтры (см. раздел Дополнительные фильтры).

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

Дополнительные фильтры

Полная форма фильтров включает в себя следующие поля:

  • Пользователь — идентификатор пользователя.
  • Заказ — идентификатор заказа.
  • Сообщение — короткое идентификационное сообщение для поиска логов.
  • Событие — перечень регистрируемых системой событий:
    • Любой
    • Регистрация действия
    • [GDS] Запрос — запрос к внешней системе.
    • [GDS] Ответ — ответ от внешней системы.
    • [GDS] Ошибка — получена ошибка от внешней системы.
    • [Нотификация] Событие — что-то кому-то отправлено (сообщение).
    • [Нотификация] SMS — SMS нотификация.
    • [Нотификация] Email — e-mail нотификация.
    • [Нотификация] Ошибка — ошибка при нотификации.
    • [Ошибка] Валидация — ошибка при бэкенд валидации (формы например).
    • [Ошибка] Ограничение доступа — ошибка с запретом доступа кому-нибудь куда-нибудь.
    • [Ошибка] Блокировка — для неопределенных ошибок вызванных функцией контроллера ->lock().
    • [Ввод/вывод] Запрос — получили входящий запрос (колбек какой-нибудь).
    • [Ввод/вывод] Ответ — ответ на входящий запрос.
    • [Ввод/вывод] Загрузка файла — кто-то вгружает файл.
    • [Ввод/вывод] Локальный автозапрос — запуск http запроса к своему серверу.
    • [Интеграция] Экспорт — экспорт в систему.
    • [Интеграция] Импорт — импорт из системы.
    • [Интеграция] Ошибка — ошибка импорта/экспорта.
    • [Авторизация] Через сайт — авторизация через сайт.
    • [Авторизация] Через внешнюю систему — авторизация через удаленную систему.
    • [Авторизация] Выход — logout.
    • [Авторизация] Ошибка — ошибка при авторизации.
    • [Регистрация] Запрос — регистрация.
    • [Регистрация] Подтверждение — подтверждение регистрации.
    • [Регистрация] автоматическая — авторегистрация.
    • [Пользователи] Изменение — в пользователе/группе что-то меняется.
    • [Пользователи] Создание нового — новый пользователь.
    • [Пользователи] Создание компании — новая компания/агентство.
    • [Пользователи] Создание группы — новая группа.
    • [Пользователи] Изменение пароля — изменение пароля.
    • [Пользователи] Удаление — удаление пользователя.
    • [Заказ] Ошибка при бронировании
    • [Заказ] Ошибка при аннуляция
    • [Заказ] Ошибка при выписке
    • [Заказ] Ошибка при обновлении
    • [Заказ] Ошибка при модификации
    • [Заказ] Операция
    • [DB] Новая запись
    • [DB] Обновление записи
    • [DB] Удаление записи
    • [Система] Якорь (для индексации)
    • [API] Запрос — запрос к агентским сервисам.
    • [API] Ответ — ответ от агентских сервисов.
    • [API] Ошибка — ошибка агентских сервисов.
    • [Оплата] Смена статуса — смена статуса оплаты.
    • [Оплата] Запрос к шлюзу — запрос к платежному шлюзу.
    • [Оплата] Ответ от шлюза — ответ от платежного шлюза.
    • [Оплата] Ошибка — ошибка платежного шлюза.
    • [Оплата] Переход на страницу шлюза
    • [Оплата] Смена способа оплаты
    • [Депозит] Изменение депозита
    • [Депозит] Изменение кредитного лимита
    • [Депозит] Доступные средства
    • Предупреждение
  • Действие — перечень регистрируемых в системе действий.
    • Любой
    • Неустановленное
    • Регистрация
    • Авторизация
    • Авторизация (дополнительно)
    • Выход
    • Настройки
    • Форма поиска
    • Процесс поиска
    • Результаты поиска
    • Запрос данных по услуге
    • Ввод информации о заказчике
    • Ввод информации о пассажирах
    • Бронирование
    • Отображение информации о заказе
    • Оплата
    • Неопределенное действие с заказом
    • Подтверждение
    • Выписка
    • Отмена выписки
    • Возврат денег
    • Просмотр информации
    • Дополнительный клиентский запрос
    • Обновление
    • Тестовый скрипт
    • Модификация заказа
    • Автоматическое действие
    • Системное действие
    • Форма (прочее)
    • Мои пассажиры
    • Сообщения и заявки
    • Документы
  • Поиск
  • Биллинг
  • Поставщик
  • Платежный шлюз
  • Объект-пользователь
  • Объект
  • ID действия
  • IP
  • Дата
  • За последние X секунд
  • С запросами к GDS
  • Тестовый режим
  • Успешность
    • Любой
    • Успешные
    • Не успешные

Ввод в поле «Идентификатор пользователя» ограничен использованием целых положительных чисел. На остальные поля ввода строгие ограничения не накладываются, однако, необходимо вводить значения логически подходящие под конкретное поле, иначе фильтр просто не вернет результатов.

Успешность действия

Успешность действия это признак всего действия (одного пхп запроса), например, для поиска — это получение хотя бы одного результата, для бронирования — успешная бронь и т.п.

Предустановленные фильтры

Для удобства пользователей, ряд фильтров вынесен в отдельный блок и для их использования нет необходимости заносить какие-либо значения в форму с параметрами фильтра. В блоке предустановленных фильтров доступны следующие варианты:

  • Мои логи (текущего пользователя)
  • Мои логи (по IP)
  • Проблемные выписки
  • Частичные выписки
  • Проблемные бронирования
  • Проблемные аннуляции

Логирование XML-данных

Модуль осуществляет логирование:

  • пакетной выгрузки заказов из ЛК в форматах Nemo/SOFI,
  • выгрузки статистики метапоиска,
  • экспорта пользователей.

Для первых двух выгрузок, одиночных выгрузок заказов и обращений к GDS доступно скачивание каждого лога отдельно.

Если в содержимом события находится не только XML, то из всего содержимого вычленяется и выводится только XML (например, выгрузка Немо/Софи).

Для того чтобы браузер не «подвисал» из-за большого объема лога события (более 64000 символов) на главной странице логов (settings/logs) вместо содержимого выводится соответствующее сообщение. XML можно просмотреть в отдельном окне через специальный плагин.

Примеры логирования

Реквизиты подключения к GDS

  • При изменении реквизитов подключения к GDS, эти изменения и состояние настроек до них логируются.
  • При удалении реквизитов логируется id самих удаляемых реквизитов и какие данные содержались в этом id.

Логирование изменения значения настройки

Любое изменение настройки логируется:

  • дата и время изменения значения настройки;
  • полное название настройки;
  • пользователь, изменивший значение настройки;
  • предыдущее значение настройки;
  • текущее значение настройки.

Пример:

2014-10-06 15:33:41.915 [Пользователи] Изменение "user.param.time_zone" (Данные)
Array
(
    [oldValue] => Pacific/Fakaofo
    [newValue] => Indian/Antananarivo
)

Примеры поиска логов

Если в тикете указана ошибка, для поиска логов ее нужно ввести в поле сообщение.

Возможные ошибки

SOAP ERROR ошибки

В случае если тело SOAP запроса не соответствует схеме запроса, то в сообщении лога можно будет увидеть

Ошибка "SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from '%адрес_схемы%' : faile"

См. также