Открыть главное меню

Изменения

Логи системы

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