Давеча появилась необходимость внедрить SLA в Redmine для некоторых типов задач. Каких‑то автоматизированных метрик в компании сейчас нет, из‑за чего руководителю направления приходится «вручную» или вернее «вглазную» контролировать сроки. Минусы этого описывать не буду. Сменить Redmine может и хотелось бы, но возможности такой нет.
Несмотря на устаревший интерфейс, по‑прежнему довольно много компаний используют Redmine, благодаря 3 китам: бесплатности, открытому исходному коду, гибкости настройки, а также те кому важно иметь систему на собственном хостинге.
Я был уверен, что задача нетривиальная. Ведь система давно на рынке, экосистема плагинов немаленькая — значит, должно быть готовое решение. Достаточно найти подходящий плагин, установить — и готово! С этой целью я начал поиск доступных вариантов.
На практике всё оказалось сложнее...
Вот и решил я разобраться, какие плагины реально работают (или не работают) на версии Redmine 5.1, какие проблемы возникают и какие варианты вообще остаются.
При первом ознакомлении с плагинами Redmine уже выяснилась одна существенная проблема — у большей их части отсутствует хоть какое-то внятное описание, а при более детальном анализе становится понятно, что даже если удастся что-то найти подходящее, то нет никаких гарантий совместимости с текущей версией Redmine 5.1.
Раз уж у меня было время и желание, то подошел к вопросу с должным энтузиазмом. Таблица сравнений будет ниже.
Написал небольшое ТЗ, но здесь не будем вдаваться в него подробно. Если вкратце задача стоит так:
Чтобы не трогать работающий функционал и не быть голословным в своих догадках.
Поднял стенд Redmine в Docker с отдельной внутренней базой данных и тестовыми данными, чтобы безопасно установить, протестировать и сравнить плагины.
Оказалось, что подходящих плагинов неожиданно мало, а «живых» еще меньше. Хоть требований и немного:
Необходимо контролировать время реакции;
Время решения;
И уметь в списке задач фильтровать по параметрам выше.
В итоге отобрал несколько наиболее живых вариантов. Искал их на официальном сайте и гитхабе.
Теперь подробнее:
Как я поднимал стенд
Чтобы изолировать все мои эксперименты, я собрал стенд в docker
отдельный контейнер с Redmine
отдельная база данных
доступ только через localhost
фиксированная версия Redmine (5.1)
Заранее вынес папку с файлами и плагинами на локальный диск, чтобы не пересобирать контейнер каждый раз.
Docker-compose.yml
services: postgres: image: postgres:16 volumes: - db_data:/var/lib/postgresql/data environment: POSTGRES_USER: "redmine" POSTGRES_PASSWORD: "password" POSTGRES_DB: "redmine" PGDATA: "/var/lib/postgresql/data" restart: always redmine: image: redmine:5.1 ports: - 80:3000 volumes: - ./local-files:/usr/src/redmine/files - ./local-plugins:/usr/src/redmine/plugins depends_on: - postgres environment: REDMINE_DB_POSTGRES: "postgres" REDMINE_DB_USERNAME: "redmine" REDMINE_DB_PASSWORD: "password" REDMINE_DB_DATABASE: "redmine" restart: no volumes: redmine_data: db_data:
Запускаюсь
docker-compose up -d
И вот Redmine запущен, ожидал что будут ошибки, но запуск прошел спокойно.
в docker-desktop появились контейнеры, в браузере Redmine открывается.
Авторизуюсь в первый раз (admin/admin)

Заполнил разные справочники, создал проект и несколько задач.
И вот уже казалось бы пора проверять скачанные плагины, но нет. Сначала делаю backup хотя бы базы данных.
Из desktop версии докера сделать это несложно:
Переходим во вкладку "Volumes" -> Открываем базу -> Переходим во вкладку "Export" -> Жмем кнопку "Quick export"
Тестирование плагинов
Чтобы избежать конфликтов, проверяю плагины по отдельности. Принцип следующий:
Беру плагин и кладу в папку plugins на диске
Устанавливаю зависимости(bund le install)
Делаю миграцию, если требуется (rake redmine:plugins)
Как правило, что требуется для установки плагина описано в месте откуда я их скачивал.
Сразу поймал пару ошибок вида:
Could not find gem 'business_time (>= 0.13.0)' Could not find gem 'holidays (>= 7.1.0)'
Вылечил, установив нужные библиотеки:
gem install business_time gem install holidays
Анализ плагинов
Сводная таблица
№ |
Плагин |
Результат |
Комментарий |
1 |
reporting_sla |
Не успешно |
Несовместимость версий |
2 |
likehopper/redmine_sla |
Не успешно |
Нет поддержки oracle |
3 |
redmine_issue_sla |
Не успешно |
Несовместимость версий |
4 |
redmine_sla_timer |
Не успешно |
Несовместимость версий |
5 |
redmine_sla_ola |
Успешно |
Есть дополнительные требования к задачам |
6 |
agile |
Успешно |
Не покрывает нужных сценариев |
7 |
RedmineUP |
Успешно |
Не совсем то, что нужно |
8 |
Самописный плагин |
- |
Оценка по времени = 3-5 дня на демоверсию |
Подробнее о каждом плагине
reporting_sla
плагин для отслеживания и отчетности по соглашениям об уровне обслуживания (SLA) в Redmine, предоставляющий подробные отчеты о жизненном цикле задач с настраиваемыми расчетами SLA на основе рабочего времени, праздников, выходных и матриц приоритетов.
Ссылка: https://github.com/easy-petr/redmine-sla-plugin
Дата последнего обновления: 18.11.2025
Вывод: Версии Rails/Redmine несовместимы. Требует серьезной доработки
likehopper/redmine_sla
плагин делегирует расчет SLA хранимым процедурам PostgreSQL, что позволяет: точно обрабатывать рабочие графики сроки с учетом праздников эффективно рассчитывать большие объемы задач предсказуемые и воспроизводимые результаты движок разработан для производственной среды
Дата последнего обновления: 12.02.2026
Вывод: хорошая производительность, логика расчета SLA вынесена в бд. работает только с PostgreSQL. Могло бы быть неплохо, но у меня Oracle.
redmine_agile
Устанавливается без доработок, работает, но не решает задачу SLA
Дата последнего обновления: 03.12.2025
Вывод: не про SLA, а скорее про визуализацию задач
redmine_issue_sla
Плагин, позволяющий назначать соглашения об уровне обслуживания (SLA) в зависимости от приоритета задачи и проекта. В последний раз обновлялся под Redmine 3.x
Дата последнего обновления: 29.01.2018
Вывод: на 5.1 не встает без переделок, плагин устарел
redmine_sla_timer
Описания как таковое отсутствует
Дата последнего обновления: 12.07.2020
Вывод: на redmine 5.1 без переделок не встает
redmine_sla_ola
Плагин запускается, но для нормальной работы тоже требуются доработки. Необходимо
добавить кастомное поле products
добавить поле first_reply
Без этого плагин просто бесполезен.
Дата последнего обновления: 12.07.2020
Вывод: рабочий вариант, но не “из коробки”
RedmineUP Helpdesk
Живой продукт. Авторы предлагают только пакетные предложения. В том числе и для тех.поддержки
Дата последнего обновления: нет информации
Вывод: Стабильный вариант, если есть бюджет. Есть поддержка и обновления.
Итог
Готового решения, чтобы поставить и использовать я не нашел.
Большинство плагинов просто из "коробки" не взлетят. Если вам нужен SLA в Redmine, то, по сути, есть три дороги:
Платить чтобы внедрил кто-то другой (redmineUP), но не всегда это оказывается проще, учитывая политику безопасности.
Дорабатывать существующие (redmine_sla_ola)
Писать свое
Четвертого я не нашел. На мой взгляд 3 вариант наиболее подходящим, по крайней мере, в моем конкретном случае.
В следующей статье покажу прототип.
VitaminND
SLA - хотелки менежеров, мало общего имеют с реальным миром.
Как можно по приоритету задачи установить, сколько времени должно пойти на ее решение?
Если, конечно, задача не типовая. А типовые задачи в нашем мире программистов редко встречаются.
Kirim
SLA полезно, когда нужно остлеживать время реакции, а не всегда решение. Особенно в саппорте, чтобы запрос клиента ушел дальше вовремя. С разработкой, это может быть полезно когда SLA для менеджера на проверку задачи. Ну в целом много можно придумать таких вещей. Решение, согласен, странно автоматически оценивать