Skip to content

Latest commit

 

History

History
119 lines (83 loc) · 9.78 KB

README.md

File metadata and controls

119 lines (83 loc) · 9.78 KB

reperr

quality gate coverage

Веб-приложение для автоматической обработки ошибок информационных баз, работающих на платформе 1С:Предприятие 8.3.17+

Содержание

Введение

Название reperr образовано от report и error, произносится как рэпер ✌️

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

Возможности

  • Сохранение запросов информации об ошибках, которые направляет клиентское приложение.
  • Распаковка поступающих отчетов об ошибках.
  • Автоматическая регистрация ошибок в баг-трекере (Jira, Redmine).
  • Отображение Ид задачи из баг-трекера прямо в окне 1С, если такая ошибка уже была зарегистрирована там ранее.
  • Запрет повторной регистрации одной и той же ошибки.
  • Отправка сообщений с информацией об ошибке в точку обмена RabbitMQ.
  • Отправка сообщений с информацией об ошибке в Sentry.

Установка и запуск

Запуск в docker-контейнере

  • клонировать текущий репозиторий
  • внести изменения в src/appsettings.json (подробнее)
  • внести изменения в docker-compose.yml
  • выполнить команду 'docker-compose up -d'
  • убедиться, что веб-интерфейс открывается в браузере
  • подключить информационные базы 1С (подробнее)

Посмотреть лог контейнера можно с помощью команды docker logs -f <ID>, где <ID> - идентификатор контейнера, который выводит команда docker container ps -a

Ручная установка и запуск

  • распаковать OneScript.Web в любой локальный каталог
  • клонировать текущий репозиторий
  • внести изменения в src/appsettings.json (подробнее)
  • в каталоге src/ выполнить команду opm install -l для установки локальных зависимостей
  • из корневого каталоге проекта запустить OneScript.WebHost.exe (см. каталог, в который был распакован OneScript.Web на первом шаге)
  • убедиться, что веб-интерфейс открывается в браузере
  • подключить информационные базы 1С (подробнее)

Настройка приложения

Все параметры приложения расположены в файле src/appsettings.json.

Подразделы DataStorage и Integrations содежат списки поддерживаемых хранилищ данных и баг-трекеров соответственно. Приложение считывает эти настройки в момент запуска и использует первый активированный способ ("enabled": true). Для того, чтобы изменения вступили в силу, достаточно просто перезапустить приложение / контейнер.

Подключение информационных баз 1С

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

Расположение настроек: Функции для технического специалиста -> Стандартные -> Управление настройками обработки ошибок -> Адрес сервиса регистрации ошибок.

Требования

  • OneScript.Web 0.7.0 (на других версиях работоспособность не проверялась)
  • 1С:Предприятие 8.3.17+ (в более младших версиях отсутствуют необходимые возможности платформы)

Особенности и ограничения

  • настройки регистрации ошибок хранятся внутри информационной базы, поэтому может потребоваться ручное отключение регистрации ошибок в копиях информационных баз.
  • на данный момент механизм регистрации ошибок не предоставляет практически никакой информации об информационной базе, в которой произошла ошибка.
  • ошибки регистрируются в баг-трекере от имени владельца API-ключа, а не от лица пользователя информационной базы.
  • веб-интерфейс пока почти полностью состоит из заглушек.
  • какие-либо ограничения доступа на уровне веб-приложения отсутствуют. Любой, кто сможет открыть веб-интерфейс, сможет просматривать всю информацию.
  • отправка присоединенных файлов в точку обмена RabbitMQ пока не поддерживается.

Планы по развитию

  • настройка приложения с нуля через веб-интерфейс
  • передача API-ключей для баг-трекеров через переменные окружения
  • поддержка YouTrack, СППР ред. 1 и 2 в качестве баг-трекера
  • гибкая настройка параметров регистрации ошибок
    • определение необходимости регистрации ошибки
    • кастомизация сообщения, которое выводится пользователю
  • перевод приложения на библиотеку entity
    • поддержка хранения данных во внешней БД
  • аутентификация пользователей веб-приложения

Обратная связь и доработка

Опишите ваш вопрос \ пожелание в виде Issue.

Разработка ведется по git-flow, PR крайне приветствуются.

Архитектура приложения позволяет относительно легко добавить свой баг-трекер и чуть сложнее - собственное хранилище данных (планируется перевод приложения на entity).

Зависимости

Спасибо авторам и контрибьюторам!

Авторы