Трекер ошибок для 1С

Трекер ошибок для 1С

Цель статьи

Разработать инструмент для получения и мониторинга ошибок в 1С

Введение

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

При работе в 1С пользователь часто сталкивается с ошибками, которые потом сохраняются в журнале регистраций. Просматривать записанные ошибки можно и в типовом журнале, но это не всегда удобно и эффективно. Чтобы исправить эту проблему, была создана интеграция с трекером ошибок Bugsnag.

Что мы можем получить с помощью интеграции?

  1. Сбор информации об ошибках в режиме реального времени;
  2. Настраиваемая группировка ошибок;
  3. Уведомление при получении новых ошибок;
  4. Частота возникновений ошибок;
  5. Поиск по ошибкам;
  6. Работа с ошибками;
  7. Графическая визуализация по ошибкам

Разработка

Создание проекта в Bugsnag

Для начала нужно зарегистрироваться по ссылке: https://app.bugsnag.com/user/new/ и создать новый проект. При создании проекта нужно выбрать приложение и платформу. 1С в списке нет, поэтому выбираем Other

article-image

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

article-image

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

Content-Type = application/json;

Bugsnag-Api-Key = полученный ключ;

Bugsnag-Payload-Version = 5;

article-image

Ключ API можно будет посмотреть или изменить в настройках проекта.

Описание информации для отправки в Bugsnag

Для начала надо определиться, какие данные необходимо передавать в трекер ошибок:

Контекст:

  1. Платформа
  2. Конфигурация
  3. Версия продукта
  4. ID клиента
  5. ID пользователя БД
  6. Настройки

Ошибки:

  1. Информация об ошибке
  2. Цепочка исключений (Стек вызовов)
  3. Место возникновения

Действия пользователей:

  1. Работа с интерфейсом
  2. HTTP запросы
  3. Выполняемые операции

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

  1. Общее:
    • дата
    • сеанс
  2. Важность:
    • Ошибка (нас интересуют только ошибки)
    • Предупреждение
    • Информация
    • Примечание
  3. Основные свойства
    • Пользователь (Группа доступа)
    • Событие
    • Компьютер
    • Приложение (наименование, версия)
      • Конфигуратор
      • Толстый клиент
      • Тонкий клиент
      • Фоновое задание
    • Комментарий (Описание ошибки)
  4. Данные
    • Метаданные (Объект 1С)
    • Данные
    • Представление данных

Для отправки ошибки из 1С необходимо сформировать структуру определенных свойств. Тело запроса подробно описано в документации на официальном сайте. Приступим к разбору свойств, которые будем отправлять в Bugsnag:

notifier - информация об обработчике трекера ошибок. Записываем имя и версию нашей разработки;

events - массив из событий (ошибок)

В Events мы передадим структуру из: exceptions, context, unhandled, severity, user, app, device, session.

exceptions - полный стек вызовов перед возникновением ошибки

Пример выгруженного стека:

article-image

context - передаем представление события

unhandled - true. Означает, что это обработанная ошибка

severity - error (вид события)

user - структура из УИД пользователя и его имени

article-image

app - если ошибка произошла в расширении, передаем наименование и версию расширения

article-image

device - информация о платформе, компьютере и т.д

article-image

session - сессия с ошибкой

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

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

article-image

Заключение

Интеграция с Bugsnag позволит свести количество ошибок к минимуму, что в дальнейшем благоприятно скажется на эффективности разработки.

Комментарии для сайта Cackle

Сервисы 1С для работы с маркетплейсами