Логи системы: различия между версиями

Материал из Центр поддержки системы бронировании
Перейти к навигации Перейти к поиску
(Принцип работы)
 
(не показана 61 промежуточная версия 4 участников)
Строка 2: Строка 2:
 
[[Категория:Функции]]
 
[[Категория:Функции]]
 
<!-- -->
 
<!-- -->
[[Файл:Общий_вид_интерфейса_логов_2.png|thumb|300px|Пример окна логов системы {{NameSystem}}]]
+
'''Логи системы''' — модуль {{NameSystem|link}} для учета действий и событий, происходящих в системе.
'''Логи системы''' — модуль системы онлайн-бронирования {{NameSystem|link}}, содержащий подробный журнал действий и событий, происходящих в системе.
 
  
 
==Назначение==
 
==Назначение==
  
Система онлайн-бронирования nemo.travel поддерживает гибкий инструмент логирования всех важных операций, происходящих в ней. Это помогает в кротчайшие сроки узнать детальную информацию практически по любому действию внутри системы. Интерфейс предоставляет широчайший выбор фильтров для выбора необходимых данных. Кроме того, имеется ряд предустановленных фильтров, которые выделены в отдельный блок и доступны по ссылкам.
+
nemo.travel поддерживает гибкий инструмент логирования всех важных операций, происходящих в ней. Это помогает в кратчайшие сроки узнать детальную информацию практически по любому действию внутри системы. Интерфейс предоставляет широчайший выбор фильтров для выбора необходимых данных. Кроме того, имеется ряд предустановленных фильтров, которые выделены в отдельный блок и доступны по ссылкам.
  
 
==Принцип работы==
 
==Принцип работы==
  
 
Логи в зависимости от типа бывают:
 
Логи в зависимости от типа бывают:
* индексируемые - ошибки, предупреждения и пр. можно искать через фильтры в административной панели управления (/settings__logs).
+
* индексируемые ошибки, предупреждения и пр. Эти логи можно искать через фильтры логов.
* неиндексируемые - сообщение и пр., доступны в теле одного лога-действия при открытии.
+
* не индексируемые — сообщение и пр., доступны в теле одного лога-действия при открытии.
  
Если после отработанного скрипта не было собрано ни одного лога с индексацией - логи не сохраняются.
+
Если после отработанного скрипта не было собрано ни одного лога с индексацией, логи не сохраняются.
  
 
'''Принципы:'''
 
'''Принципы:'''
 
*индексировать только действительно полезные логи (выбирать тип события правильно).
 
*индексировать только действительно полезные логи (выбирать тип события правильно).
 
*минимизировать объем данных, помещаемый в логи (например, не сохранять объект брони целиком).
 
*минимизировать объем данных, помещаемый в логи (например, не сохранять объект брони целиком).
[[Файл:Форма_фильтров_логов_полная.png|thumb|300px|Полная форма фильтров логов]]
 
[[Файл:Предустановленные_фильтры_логов.png|thumb|300px|Предустановленные фильтры логов]]
 
<!--[[Файл:Фрагмент_логов.png|thumb|300px|Фрагмент записей логов]]
 
[[Файл:Детальная_информация_лога.png|thumb|300px|Пример детальной информации лога]]
 
[[Файл:Детальная_информация_лога_2.png|thumb|300px|Пример детальной информации лога]]-->
 
  
 
Для поиска и просмотра логов зайдите в раздел '''Для техподдержки → Логи'''.
 
Для поиска и просмотра логов зайдите в раздел '''Для техподдержки → Логи'''.
  
Страница логов состоит из 3 основных частей:
+
Раздел логов состоит из 3 основных частей:
 
* Форма фильтров.
 
* Форма фильтров.
 
* Блок предустановленных фильтров.
 
* Блок предустановленных фильтров.
 
* Таблица логов.
 
* Таблица логов.
  
Записи логов разбиты постранично, чтобы перейти к следующей странице, нажмите ссылку '''След..''' внизу таблицы.
+
Записи логов разбиты постранично, чтобы перейти к следующей странице, нажмите ссылку '''След.''' внизу таблицы.
 +
 
 +
{| class="wikitable"
 +
|-
 +
|[[Файл:Общий_вид_интерфейса_логов_2.png|1200px]]
 +
|-
 +
|Страница логов
 +
|}
 +
 
 +
'''Успешность действия''' — это признак одного {{NameProject1}} запроса, например, для поиска — это получение хотя бы одного результата, для бронирования — успешная бронь и т.п.
  
 
== Таблица логов ==
 
== Таблица логов ==
[[Файл:Фрагмент_логов.png|thumb|600px|Таблица логов]]
+
* '''Столбцы таблицы''' — параметры логов,
[[Файл:Детальная_информация_лога.png|thumb|600px|Детальная информация лога]]
+
* '''Строки таблицы''' — записи действий.
[[Файл:Детальная_информация_лога_2.png|thumb|600px|Пример детальной информации лога]]
+
 
 +
Одна запись лога называется '''действием''' (по сути эквивалент одного php-скрипта). Действие содержит множество '''операций'''.
 +
 
 +
Каждая запись в таблице — действие. Чтобы открыть его операции, разверните запись, нажав на нее. <br /> Некоторые операции сопровождаются ссылкой '''Данные''', открывающей дополнительную информацию о событии (операции): тело XML-запроса, набор параметров или полное сообщение (если краткое обрезалось по длине) и т.п.
  
* '''Стобцы таблицы''' - параметры логов,
+
На каждое действие (лог) присутствует ссылка. Дополнительно могут быть ссылки ''Выгрузить архивом xml логи'', ''Просмотр заказа'', ''Просмотр результатов поиска'', ''Форма поиска'' и др.
* '''Строки таблицы''' - записи действий.
 
  
Каждая запись в таблице содержит детализацию. Чтобы открыть детали лога, разверните запись, нажав на нее.
+
Зеленым цветом выделены логи, в которых происходило взаимодействие с ГРС.
  
 
{{Attention|Логи поисковых запросов записываются в отдельную таблицу.}}
 
{{Attention|Логи поисковых запросов записываются в отдельную таблицу.}}
Строка 50: Строка 55:
 
* '''Запуск''' — время запуска действия.
 
* '''Запуск''' — время запуска действия.
 
* '''Пользователь''' — пользователь, запустивший действие.
 
* '''Пользователь''' — пользователь, запустивший действие.
* '''Компонент''' — к какому компоненту системы относится данное действие.
+
* '''Компонент''' — компонент системы, к которому относится данное действие.
* '''Действие''' — формальное наименование действия.
+
* '''Действие''' — наименование действия.
* '''Сообщение''' — короткое идентификационное сообщение для поиска логов.
+
* '''Сообщение''' — короткое идентификационное сообщение, используется для поиска логов.
* '''Объект''' —  любое вспомогательное числовое значение (например количество результатов в поиске).
 
 
* '''Заказ''' — номер заказа.
 
* '''Заказ''' — номер заказа.
 
* '''Поиск''' — номер поиска.
 
* '''Поиск''' — номер поиска.
* '''Поставщик''' — формальное наименование задействованного поставщика услуг.
+
* '''Биллинг''' — номер транзакции по оплате.
 +
* '''Поставщик''' — наименование задействованного поставщика услуг.
 
* '''Время выполнения''' — численное значение (в секундах).
 
* '''Время выполнения''' — численное значение (в секундах).
* '''IP''' — адрес хоста, с которого запущено действие.
+
* '''IP''' — адрес хоста, инициировавшего действие.
* '''доп.''' — дополнительная информация по действию. Обычно в этом поле указывается статус действия (''Успешно''/''Неуспешно''); количество ошибок, если они произошли; режим работы системы, в котором было выполнено действие).
+
* '''доп.''' — дополнительная информация, например:
 +
** статус действия (''Успешно''/''Неуспешно'');  
 +
** количество ошибок, если они произошли;  
 +
** режим работы системы, в котором было выполнено действие).
  
Одна запись лога называется '''действием''' (по сути эквивалент одного php-скрипта). Действие содержит множество '''операций'''.
+
==Фильтры логов ==
 +
Для поиска логов используют фильтры. По умолчанию форма фильтров отображается на странице в свернутом виде, в котором доступны наиболее используемые параметры фильтрации:
  
На каждое действие (лог) присутствует ссылка.
+
*'''Пользователь''' — идентификатор пользователя,
 +
*'''Заказ''' — идентификатор заказа,
 +
*'''Сообщение''' — короткое идентификационное сообщение для поиска логов,
 +
*'''Событие''' — перечень регистрируемых системой событий.
  
Дополнительно могут быть ссылки ''Выгрузить архивом xml логи'', ''Просмотр заказа'', ''Просмотр результатов поиска'', ''Форма поиска'' и др.
+
Чтобы получить доступ ко всем параметрам фильтра, нажмите кнопку ''Дополнительные фильтры'' (см. раздел [[Логи системы#Дополнительные фильтры|Дополнительные фильтры]]).
 +
==== Дополнительные фильтры ====
 +
Полная форма фильтров включает в себя следующие поля:
 +
{| class="wikitable mw-collapsible mw-uncollapsed"
 +
|-
 +
! scope="col" | Название
 +
! scope="col" | Описание
 +
|-
 +
| width="20%"|'''Пользователь '''
 +
| width="80%"| Идентификатор пользователя.
 +
|-
 +
|'''Заказ'''
 +
|Идентификатор заказа
 +
|-
 +
|'''Сообщение'''
 +
|Короткое идентификационное сообщение для поиска логов.
 +
|-
 +
|'''Событие'''
 +
|
 +
Перечень регистрируемых системой событий:
  
==== Данные ====
+
* ''Любой''.
'''Данные''' — дополнительная информация о событии (операции). Там может быть тело XML-запроса, набор параметров, полное сообщение (если краткое обрезалось по длине) и т.п.
+
* ''Регистрация действия''.
 +
* ''[GDS] Запрос'' — запрос к внешней системе.
 +
* ''[GDS] Ответ'' — ответ от внешней системы.
 +
* ''[GDS] Ошибка'' — получена ошибка от внешней системы.
 +
* ''[Нотификация] Событие'' — что-то кому-то отправлено (сообщение).
 +
* ''[Нотификация] SMS'' — SMS нотификация.
 +
* ''[Нотификация] Email'' — e-mail нотификация.
 +
* ''[Нотификация] Ошибка'' — ошибка при нотификации.
 +
* ''[Ошибка] Валидация'' — ошибка при бэкенд-валидации (формы, например).
 +
* ''[Ошибка] Ограничение доступа'' — ошибка с запретом доступа кому-нибудь куда-нибудь.
 +
* ''[Ошибка] Блокировка'' — для неопределенных ошибок вызванных функцией контроллера ->lock().
 +
* ''[Ввод/вывод] Запрос'' — получили входящий запрос.
 +
* ''[Ввод/вывод] Ответ'' — ответ на входящий запрос.
 +
* ''[Ввод/вывод] Загрузка файла'' — кто-то загружает файл.
 +
* ''[Ввод/вывод] Локальный автозапрос'' — запуск http-запроса к своему серверу.
 +
* ''[Интеграция] Экспорт'' — экспорт из системы.
 +
* ''[Интеграция] Импорт'' — импорт в систему.
 +
* ''[Интеграция] Ошибка'' — ошибка импорта/экспорта.
 +
* ''[Авторизация] Через сайт'' — авторизация через сайт.
 +
* ''[Авторизация] Через внешнюю систему'' — авторизация через удаленную систему.
 +
* ''[Авторизация] Выход'' — logout.
 +
* ''[Авторизация] Ошибка'' — ошибка при авторизации.
 +
* ''[Регистрация] Запрос'' — регистрация.
 +
* ''[Регистрация] Подтверждение'' — подтверждение регистрации.
 +
* ''[Регистрация] автоматическая'' — авторегистрация.
 +
* ''[Пользователи] Изменение'' — в пользователе/группе что-то меняется.
 +
* ''[Пользователи] Создание нового'' — новый пользователь.
 +
* ''[Пользователи] Создание компании'' — новая компания/агентство.
 +
* ''[Пользователи] Создание группы'' — новая группа.
 +
* ''[Пользователи] Изменение пароля'' — изменение пароля.
 +
* ''[Пользователи] Удаление'' — удаление пользователя.
 +
* ''[Заказ] Ошибка при бронировании''
 +
* ''[Заказ] Ошибка при аннуляция''
 +
* ''[Заказ] Ошибка при выписке''
 +
* ''[Заказ] Ошибка при обновлении''
 +
* ''[Заказ] Ошибка при модификации''
 +
* ''[Заказ] Операция''
 +
* ''[DB] Новая запись''
 +
* ''[DB] Обновление записи''
 +
* ''[DB] Удаление записи''
 +
* ''[Система] Якорь (для индексации)''
 +
* ''[API] Запрос'' — запрос к агентским сервисам.
 +
* ''[API] Ответ'' — ответ от агентских сервисов.
 +
* ''[API] Ошибка'' — ошибка агентских сервисов.
 +
* ''[Оплата] Смена статуса'' — смена статуса оплаты.
 +
* ''[Оплата] Запрос к шлюзу'' — запрос к платежному шлюзу.
 +
* ''[Оплата] Ответ от шлюза'' — ответ от платежного шлюза.
 +
* ''[Оплата] Ошибка'' — ошибка платежного шлюза.
 +
* ''[Оплата] Переход на страницу шлюза''
 +
* ''[Оплата] Смена способа оплаты''
 +
* ''[Баланс] Изменение баланса''
 +
* ''[Баланс] Изменение доступного овердрафта''
 +
* ''[Баланс] Доступные средства''
 +
* ''Предупреждение''
 +
|-
 +
|Действие
 +
|Выберите тип действия:
 +
* ''Любой''
 +
* ''Неустановленное''
 +
* ''Регистрация''
 +
* ''Авторизация''
 +
* ''Авторизация (дополнительно)''
 +
* ''Выход''
 +
* ''Настройки''
 +
* ''Форма поиска''
 +
* ''Процесс поиска''
 +
* ''Результаты поиска''
 +
* ''Запрос данных по услуге''
 +
* ''Ввод информации о заказчике''
 +
* ''Ввод информации о пассажирах''
 +
* ''Бронирование''
 +
* ''Отображение информации о заказе''
 +
* ''Оплата''
 +
* ''Неопределенное действие с заказом''
 +
* ''Подтверждение''
 +
* ''Выписка''
 +
* ''Отмена выписки''
 +
* ''Возврат денег''
 +
* ''Просмотр информации''
 +
* ''Дополнительный клиентский запрос''
 +
* ''Обновление''
 +
* ''Тестовый скрипт''
 +
* ''Модификация заказа''
 +
* ''Автоматическое действие''
 +
* ''Системное действие''
 +
* ''Форма (прочее)''
 +
* ''Мои пассажиры''
 +
* ''Сообщения и заявки''
 +
* ''Документы''
 +
|-
 +
|Поиск
 +
|
 +
|-
 +
|Биллинг
 +
|
 +
|-
 +
|Поставщик
 +
|
 +
|-
 +
|Платежный шлюз
 +
|
 +
|-
 +
|Объект-пользователь
 +
|
 +
|-
 +
|Объект
 +
|
 +
|-
 +
|ID действия
 +
|
 +
|-
 +
|IP
 +
|
 +
|-
 +
|Дата
 +
|
 +
|-
 +
|За последние X секунд
 +
|
 +
|-
 +
|С запросами к GDS
 +
|
 +
|-
 +
|Тестовый режим
 +
|
 +
|-
 +
|Успешность
 +
|
 +
* Любой
 +
* Успешные
 +
* Не успешные
 +
|-
 +
 
 +
|}
 +
 
 +
=== Предустановленные фильтры ===
 +
Для быстроты поиска создан блок ссылок с предустановленными фильтрами:
 +
* Мои логи (текущего пользователя).
 +
* Мои логи (по IP).
 +
* Проблемные выписки.
 +
* Частичные выписки.
 +
* Проблемные бронирования.
 +
* Проблемные аннуляции.
  
 
==Поиск записей логов==
 
==Поиск записей логов==
 +
===Поиск логов===
 +
Чтобы применить фильтрацию к логам:
 +
# Выставите значения фильтров.
 +
# Нажмите на кнопку ''Поиск''.<br />Чтобы отменить фильтр, нажмите на кнопку ''Сброс''.
 +
{| class="wikitable"
 +
|-
 +
|[[Файл:Поиск логов.png|500px]]
 +
|-
 +
|Поиск логов по e-mail нотификациям указанного пользователя.
 +
|}
  
=== Фильтры логов ===
+
===Поиск логов поисковых запросов===
Для поиска логов используют фильтры. По умолчанию форма фильтров отображается на странице в свернутом виде, в котором доступны наиболее используемые параметры фильтрации:
+
Логи поисковых запросов записываются в отдельную таблицу.
  
*'''Пользователь''' - идентификатор пользователя,
+
Чтобы искать поисковые логи:
*'''Заказ''' - идентификатор заказа,
+
# Нажмите на кнопку ''Таблица логов поисковых запросов''.
*'''Сообщение''' - короткое идентификационное сообщение для поиска логов,
+
# Выставите значения фильтров.
*'''Событие''' - перечень регистрируемых системой событий.
+
# Нажмите на кнопку ''Поиск''.<br />Чтобы отменить фильтр, нажмите на кнопку ''Сброс''.
  
Чтобы получить доступ ко всем параметрам фильтра, нажмите кнопку ''Дополнительные фильтры'' (см. раздел [[Логи системы#Дополнительные фильтры|Дополнительные фильтры]]).
+
{| class="wikitable"
 +
|-
 +
|[[Файл:Кнопка_Таблица_логов_поисковых_запросов.png|500px]]
 +
|-
 +
|Ссылка на таблицу логов поисковых запросов
 +
|}
  
Чтобы фильтр применился к логам, необходимо нажать на кнопку ''Поиск'', чтобы отменить фильтр, нужно воспользоваться кнопкой ''Сброс''.
+
{| class="wikitable"
 +
|-
 +
|[[Файл:Поиск_логов_поиска.png|500px]]
 +
|-
 +
|Пример поиска логов поисковых запросов
 +
|}
  
==== Дополнительные фильтры ====
+
===Поиск восстановленных логов===
Полная форма фильтров включает в себя следующие поля:
 
* {{Setting|Пользователь}} — идентификатор пользователя.
 
* {{Setting|Заказ}} — идентификатор заказа.
 
* {{Setting|Сообщение}} — короткое идентификационное сообщение для поиска логов.
 
* {{Setting|Событие}} — перечень регистрируемых системой событий:
 
** '''Любой'''
 
** '''Регистрация действия'''
 
** '''[GDS] Запрос''' — запрос к внешней системе.
 
** '''[GDS] Ответ''' — ответ от внешней системы.
 
** '''[GDS] Ошибка''' — получена ошибка от внешней системы.
 
** '''[Нотификация] Событие''' — что-то кому-то отправлено (сообщение).
 
** '''[Нотификация] SMS''' — SMS нотификация.
 
** '''[Нотификация] Email''' — e-mail нотификация.
 
** '''[Нотификация] Ошибка''' — ошибка при нотификации.
 
** '''[Ошибка] Валидация''' — ошибка при бэкенд валидации (формы например).
 
** '''[Ошибка] Ограничение доступа''' — ошибка с запретом доступа кому-нибудь куда-нибудь.
 
** '''[Ошибка] Блокировка''' — для неопределенных ошибок вызванных функцией контроллера ->lock().
 
** '''[Ввод/вывод] Запрос''' — получили входящий запрос (колбек какой-нибудь).
 
** '''[Ввод/вывод] Ответ''' — ответ на входящий запрос.
 
** '''[Ввод/вывод] Загрузка файла''' — кто-то вгружает файл.
 
** '''[Ввод/вывод] Локальный автозапрос''' — запуск http запроса к своему серверу.
 
** '''[Интеграция] Экспорт''' — экспорт в систему.
 
** '''[Интеграция] Импорт''' — импорт из системы.
 
** '''[Интеграция] Ошибка''' — ошибка импорта/экспорта.
 
** '''[Авторизация] Через сайт''' — авторизация через сайт.
 
** '''[Авторизация] Через внешнюю систему''' — авторизация через удаленную систему.
 
** '''[Авторизация] Выход''' — logout.
 
** '''[Авторизация] Ошибка''' — ошибка при авторизации.
 
** '''[Регистрация] Запрос''' — регистрация.
 
** '''[Регистрация] Подтверждение''' — подтверждение регистрации.
 
** '''[Регистрация] автоматическая''' — авторегистрация.
 
** '''[Пользователи] Изменение''' — в пользователе/группе что-то меняется.
 
** '''[Пользователи] Создание нового''' — новый пользователь.
 
** '''[Пользователи] Создание компании''' — новая компания/агентство.
 
** '''[Пользователи] Создание группы''' — новая группа.
 
** '''[Пользователи] Изменение пароля''' — изменение пароля.
 
** '''[Пользователи] Удаление''' — удаление пользователя.
 
** '''[Заказ] Ошибка при бронировании'''
 
** '''[Заказ] Ошибка при аннуляция'''
 
** '''[Заказ] Ошибка при выписке'''
 
** '''[Заказ] Ошибка при обновлении'''
 
** '''[Заказ] Ошибка при модификации'''
 
** '''[Заказ] Операция'''
 
** '''[DB] Новая запись'''
 
** '''[DB] Обновление записи'''
 
** '''[DB] Удаление записи'''
 
** '''[Система] Якорь (для индексации)'''
 
** '''[API] Запрос''' — запрос к агентским сервисам.
 
** '''[API] Ответ''' — ответ от агентских сервисов.
 
** '''[API] Ошибка''' — ошибка агентских сервисов.
 
** '''[Оплата] Смена статуса''' — смена статуса оплаты.
 
** '''[Оплата] Запрос к шлюзу''' — запрос к платежному шлюзу.
 
** '''[Оплата] Ответ от шлюза''' — ответ от платежного шлюза.
 
** '''[Оплата] Ошибка''' — ошибка платежного шлюза.
 
** '''[Оплата] Переход на страницу шлюза'''
 
** '''[Оплата] Смена способа оплаты'''
 
** '''[Депозит] Изменение депозита'''
 
** '''[Депозит] Изменение кредитного лимита'''
 
** '''[Депозит] Доступные средства'''
 
** '''Предупреждение'''
 
* {{Setting|Действие}} — перечень регистрируемых в системе действий.
 
** Любой
 
** Неустановленное
 
** Регистрация
 
** Авторизация
 
** Авторизация (дополнительно)
 
** Выход
 
** Настройки
 
** Форма поиска
 
** Процесс поиска
 
** Результаты поиска
 
** Запрос данных по услуге
 
** Ввод информации о заказчике
 
** Ввод информации о пассажирах
 
** Бронирование
 
** Отображение информации о заказе
 
** Оплата
 
** Неопределенное действие с заказом
 
** Подтверждение
 
** Выписка
 
** Отмена выписки
 
** Возврат денег
 
** Просмотр информации
 
** Дополнительный клиентский запрос
 
** Обновление
 
** Тестовый скрипт
 
** Модификация заказа
 
** Автоматическое действие
 
** Системное действие
 
** Форма (прочее)
 
** Мои пассажиры
 
** Сообщения и заявки
 
** Документы
 
* {{Setting|Поиск}}
 
* {{Setting|Биллинг}}
 
* {{Setting|Поставщик}}
 
* {{Setting|Платежный шлюз}}
 
* {{Setting|Объект-пользователь}}
 
* {{Setting|Объект}}
 
* {{Setting|ID действия}}
 
* {{Setting|IP}}
 
* {{Setting|Дата}}
 
* {{Setting|За последние X секунд}}
 
* {{Setting|С запросами к GDS}}
 
* {{Setting|Тестовый режим}}
 
* {{Setting|Успешность}}
 
** Любой
 
** Успешные
 
** Не успешные
 
  
Ввод в поле '''Идентификатор пользователя''' ограничен использованием целых положительных чисел. На остальные поля ввода строгие ограничения не накладываются, однако, необходимо вводить значения логически подходящие под конкретное поле, иначе фильтр просто не вернет результатов.
+
После перехода по ссылке '''Поиск восстановленных логов''', поиск будет вестись в специальном хранилище логов, которые по какой-либо причине были утрачены, а затем восстановлены.
  
===== Успешность действия =====
+
=== Примеры поиска логов ===
Успешность действия это признак всего действия (одного {{NameProject1}} запроса), например, для поиска — это получение хотя бы одного результата, для бронирования — успешная бронь и т.п.
 
  
=== Предустановленные фильтры ===
+
* '''По номеру заказа''':
Для удобства пользователей, ряд фильтров вынесен в отдельный блок и для их использования нет необходимости заносить какие-либо значения в форму с параметрами фильтра. В блоке предустановленных фильтров доступны следующие варианты:
+
*# введите номер заказа в поле ''Заказ'',
* Мои логи (текущего пользователя)
+
*# нажмите кнопку ''Поиск''.
* Мои логи (по IP)
+
{| class="wikitable"
* Проблемные выписки
+
|-
* Частичные выписки
+
|[[Файл:Поиск_логов_по_номеру_заказа.png|500px]]
* Проблемные бронирования
+
|-
* Проблемные аннуляции
+
|Поиск логов по номеру заказа
 +
|}
 +
* '''По ошибке''' — если искомые заказы содержат известную ошибку:
 +
*# введите текст ошибки в поле ''Сообщение''.
 +
*# нажмите кнопку ''Поиск''.
 +
{| class="wikitable"
 +
|-
 +
|[[Файл:Поиск заказов пользователя по ошибке.png|500px]]
 +
|-
 +
|Поиск логов с ошибкой среди заказов указанного пользователя.png
 +
|}
  
 
== Логирование XML-данных ==
 
== Логирование XML-данных ==
Строка 219: Строка 312:
 
Если в содержимом события находится не только XML, то из всего содержимого вычленяется и выводится только XML (например, выгрузка Немо/Софи).
 
Если в содержимом события находится не только XML, то из всего содержимого вычленяется и выводится только XML (например, выгрузка Немо/Софи).
  
Для того чтобы браузер не «подвисал» из-за большого объема лога события (более 64000 символов) на главной странице логов (settings/logs) вместо содержимого выводится соответствующее сообщение. XML можно просмотреть в отдельном окне через специальный плагин.
+
Для того, чтобы браузер не подвисал из-за большого объема лога события (более 64000 символов), на главной странице логов (settings/logs) вместо содержимого выводится соответствующее сообщение. XML можно просмотреть в отдельном окне через специальный плагин.
  
 
== Примеры логирования ==
 
== Примеры логирования ==
=== Реквизиты подключения к GDS ===
+
В {{NameSystem}} логируются следующие действия:
* При изменении реквизитов подключения к GDS, эти изменения и состояние настроек до них логируются.
+
* изменение настроек в панели администрирования,
* При удалении реквизитов логируется id самих удаляемых реквизитов и какие данные содержались в этом id.
+
* действие с заказом (в т.ч. нотификации, выгрузки, оплаты, фиксации статусов и т.д.),
 +
* поиск,
 +
* авторизация / регистрация на сайте,
 +
* действие в ЛК (экспорт заказов, отправка сообщений/заявок и т.д.).
  
=== Логирование изменения значения настройки ===
+
===Особенности логирования действий в {{NameSystem}}===
Любое изменение настройки логируется:
+
* Реквизиты подключения к ГРС:
* дата и время изменения значения настройки;
+
** При изменении реквизитов подключения к ГРС эти изменения и состояние настроек до них логируются.
* полное название настройки;
+
** При удалении реквизитов логируется id самих удаляемых реквизитов и какие данные содержались в этом id.
* пользователь, изменивший значение настройки;
 
* предыдущее значение настройки;
 
* текущее значение настройки.
 
  
 +
* Логирование изменения значения настройки — изменение настроек также логируется:
 +
** дата и время изменения значения настройки;
 +
** полное название настройки;
 +
** пользователь, изменивший значение настройки;
 +
** предыдущее значение настройки;
 +
** текущее значение настройки.<br />
 
Пример:
 
Пример:
 
<pre>
 
<pre>
Строка 243: Строка 342:
 
)
 
)
 
</pre>
 
</pre>
 
+
<!--
== Примеры поиска логов ==
 
 
 
Если в тикете указана ошибка, для поиска логов ее нужно ввести в поле ''сообщение''.
 
 
 
 
== Возможные ошибки ==
 
== Возможные ошибки ==
 
=== SOAP ERROR ошибки ===
 
=== SOAP ERROR ошибки ===
  
 
В случае если тело SOAP запроса не соответствует схеме запроса, то в сообщении лога можно будет увидеть <pre>Ошибка "SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from '%адрес_схемы%' : faile"</pre>
 
В случае если тело SOAP запроса не соответствует схеме запроса, то в сообщении лога можно будет увидеть <pre>Ошибка "SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from '%адрес_схемы%' : faile"</pre>
 +
 +
-->
 +
 +
== Ошибки возникающие при оплате ==
 +
* '''Блокировка "Оплата запрещена для данного заказа"''' - эту ошибку можно встретить в Админ-панели Nemo в логах когда заказ еще не забронирован и пользователь попытался оплатить; либо когда заказ забронирован, но нет в доступных действиях по заказу операции выписки; либо когда заказ выписан и нет доп.услуг для довыписки. При попытке оплаты система осуществляет эти проверки и блокирует оплату в указанных случаях.
  
 
== См. также ==
 
== См. также ==

Текущая версия на 14:18, 29 июля 2020

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

Назначение

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

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

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

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

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

Принципы:

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

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

Раздел логов состоит из 3 основных частей:

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

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

Общий вид интерфейса логов 2.png
Страница логов

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

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

  • Столбцы таблицы — параметры логов,
  • Строки таблицы — записи действий.

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

Каждая запись в таблице — действие. Чтобы открыть его операции, разверните запись, нажав на нее.
Некоторые операции сопровождаются ссылкой Данные, открывающей дополнительную информацию о событии (операции): тело XML-запроса, набор параметров или полное сообщение (если краткое обрезалось по длине) и т.п.

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

Зеленым цветом выделены логи, в которых происходило взаимодействие с ГРС.

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

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

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

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

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

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

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

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

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

Название Описание
Пользователь Идентификатор пользователя.
Заказ Идентификатор заказа
Сообщение Короткое идентификационное сообщение для поиска логов.
Событие

Перечень регистрируемых системой событий:

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

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

Для быстроты поиска создан блок ссылок с предустановленными фильтрами:

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

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

Поиск логов

Чтобы применить фильтрацию к логам:

  1. Выставите значения фильтров.
  2. Нажмите на кнопку Поиск.
    Чтобы отменить фильтр, нажмите на кнопку Сброс.
Поиск логов.png
Поиск логов по e-mail нотификациям указанного пользователя.

Поиск логов поисковых запросов

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

Чтобы искать поисковые логи:

  1. Нажмите на кнопку Таблица логов поисковых запросов.
  2. Выставите значения фильтров.
  3. Нажмите на кнопку Поиск.
    Чтобы отменить фильтр, нажмите на кнопку Сброс.
Кнопка Таблица логов поисковых запросов.png
Ссылка на таблицу логов поисковых запросов
Поиск логов поиска.png
Пример поиска логов поисковых запросов

Поиск восстановленных логов

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

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

  • По номеру заказа:
    1. введите номер заказа в поле Заказ,
    2. нажмите кнопку Поиск.
Поиск логов по номеру заказа.png
Поиск логов по номеру заказа
  • По ошибке — если искомые заказы содержат известную ошибку:
    1. введите текст ошибки в поле Сообщение.
    2. нажмите кнопку Поиск.
Поиск заказов пользователя по ошибке.png
Поиск логов с ошибкой среди заказов указанного пользователя.png

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

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

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

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

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

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

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

В Nemo.Travel логируются следующие действия:

  • изменение настроек в панели администрирования,
  • действие с заказом (в т.ч. нотификации, выгрузки, оплаты, фиксации статусов и т.д.),
  • поиск,
  • авторизация / регистрация на сайте,
  • действие в ЛК (экспорт заказов, отправка сообщений/заявок и т.д.).

Особенности логирования действий в Nemo.Travel

  • Реквизиты подключения к ГРС:
    • При изменении реквизитов подключения к ГРС эти изменения и состояние настроек до них логируются.
    • При удалении реквизитов логируется id самих удаляемых реквизитов и какие данные содержались в этом id.
  • Логирование изменения значения настройки — изменение настроек также логируется:
    • дата и время изменения значения настройки;
    • полное название настройки;
    • пользователь, изменивший значение настройки;
    • предыдущее значение настройки;
    • текущее значение настройки.

Пример:

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

Ошибки возникающие при оплате

  • Блокировка "Оплата запрещена для данного заказа" - эту ошибку можно встретить в Админ-панели Nemo в логах когда заказ еще не забронирован и пользователь попытался оплатить; либо когда заказ забронирован, но нет в доступных действиях по заказу операции выписки; либо когда заказ выписан и нет доп.услуг для довыписки. При попытке оплаты система осуществляет эти проверки и блокирует оплату в указанных случаях.

См. также