Redmine SLA
SupportUm SLA de quatro horas não são quatro horas. Resposta e resolução medidas em tempo útil de trabalho: os seus calendários, os seus feriados, as suas regras de pausa, com avisos, limiar crítico e deteção de incumprimentos.
Vários servidores: $399

- Redmine
- 4, 5, 6 e 7
- Objectivos
- 4 cronómetros independentes
- Bases de dados
- PostgreSQL, MySQL, MariaDB, SQLite
- Relatórios
- 4, com exportação CSV
- Gems adicionais
- Nenhuma
- Ficheiros do núcleo alterados
- Nenhuma
Working hours, properly
Weekly schedules with split shifts, per-calendar time zones, fixed and recurring holidays and special working days. Wall-clock across DST, so 09:00–18:00 stays 09:00–18:00.
Four independent clocks
First response, acknowledgement, resolution and closure — each with its own target, state and pause behaviour. Configure only the ones you use.
Waiting on the customer
Per-status rules decide which clocks stop. “Waiting for customer” can freeze resolution while first response keeps running — because that one is still on you.
Conditions in plain words
Match on project, tracker, status, category, assignee, group, customer or any custom field — by real names, never record IDs.
Warning, critical, breach
Thresholds fire before the deadline, not after it. Mail goes through Redmine’s own mailer, and a unique-index claim means no alert is ever sent twice.
Compliance you can defend
Compliance by target, response and resolution distributions with median and outliers, and a breach table with due date, actual date and overrun.
O cronómetro pára quando a sua equipa vai para casa
Subtrair duas datas penaliza-o pelos fins-de-semana. O Redmine SLA percorre o seu calendário laboral e conta apenas os minutos em que está aberto, pelo que um objectivo de quatro horas aberto ao fim da tarde de sexta-feira vence na segunda-feira, e não nessa mesma noite.
| Tarefa aberta | Tempo de trabalho contado | Prazo | Tempo de relógio |
|---|---|---|---|
| Terça-feira 09:30 | 4h, sem interrupções | Terça-feira 13:30 | 4 horas |
| Sexta-feira 17:00 | 1h na sexta-feira, 3h na segunda-feira | Segunda-feira 12:00 | 67 horas |
| Sexta-feira 17:00, segunda-feira feriado | 1h na sexta-feira, 3h na terça-feira | Terça-feira 12:00 | 91 horas |
| A qualquer hora, num calendário 24×7 | 4h decorridas | Quatro horas depois | 4 horas |
Os calendários suportam horários repartidos, fuso horário próprio, feriados pontuais e recorrentes, e dias de trabalho especiais.
Quatro cronómetros, cada um com as suas regras
Defina apenas os objectivos que realmente promete. Cada um arranca, entra em pausa e pára com o seu próprio evento, pelo que “à espera do cliente” pode congelar a resolução enquanto a primeira resposta continua a contar.
Primeira resposta: alguém respondeu
Pára com o primeiro comentário público de alguém que não seja o autor. O que conta como resposta define-se em cada política.
Reconhecimento: alguém assumiu a tarefa
Pára quando a tarefa é atribuída, ou quando chega a um estado à sua escolha.
Resolução: o problema está corrigido
Pára quando a tarefa chega a um estado fechado, ou a um dos estados de resolução que escolher.
Fecho: o pedido está encerrado
Um objectivo à parte para o fecho final, para equipas que resolvem primeiro e só depois confirmam com o cliente.
Parece o Redmine, porque é o Redmine
Sem iframe, sem aplicação à parte, sem segundo início de sessão. Estes são ecrãs reais do plugin no Redmine 7.0, com um projecto de demonstração que tem tarefas em todos os estados de SLA.
Agentes: o painel de SLA em cada tarefa
Uma linha por objectivo, com o estado, o tempo restante, a parte do objectivo já consumida e o prazo exacto.


Chefes de equipa: a fila, ordenada pelo que está prestes a correr mal
Filtre por estado, saúde, política ou violação, ordene pelo prazo, exporte para CSV. Os mesmos campos são filtros e colunas na própria lista de tarefas do Redmine.
Gestores: relatórios que pode apresentar a um cliente
Cumprimento, tempo de resposta, tempo de resolução e violações, filtrados por período, política, tipo e prioridade. Todos os relatórios exportam para CSV.


Administradores: políticas escritas em linguagem simples
“Quando a Prioridade da tarefa é Urgente ou Imediata.” As condições usam nomes reais escolhidos em listas, não identificadores de registos. As durações aceitam 30, 4h ou 1d 4h.




Operações: um único sítio para ver que está tudo a funcionar


Tudo aquilo que um serviço de apoio realmente discute
As disputas raramente são sobre se um pedido se atrasou. São sobre que horas contaram, quando o cronómetro devia ter parado e qual era o objectivo na altura.
Horário de trabalho, como deve ser
Horários semanais com horários repartidos, fuso horário por calendário, feriados fixos e recorrentes e dias de trabalho especiais. As 09:00 continuam a ser as 09:00 nas mudanças da hora de Verão.
À espera do cliente
Regras de pausa por estado, globais ou por política. Só o tempo de trabalho é devolvido, pelo que uma pausa durante o fim-de-semana não custa nada.
Aviso, crítico, violação
Os limiares disparam antes do prazo. Cada notificação é enviada uma única vez pelo sistema de e-mail do próprio Redmine, com modelos que pode editar por evento e por idioma.
A política certa para cada tarefa
Faça corresponder por projecto e subprojectos, tipo, prioridade, estado, categoria, autor, responsável, grupo ou qualquer campo personalizado. Quando várias políticas correspondem, ganha a de posição mais baixa.
Dentro da lista de tarefas
Política de SLA, estado, saúde, violação, prazo e tempo restante como filtros e colunas na lista de tarefas do Redmine: ordenáveis, agrupáveis e exportáveis.
As edições não reescrevem a história
Cada SLA guarda uma cópia da política com que começou. Alterar um objectivo no próximo trimestre não mexe nos números do trimestre passado. Recalcular é uma acção deliberada de administração.
O que acontece a uma tarefa
Um bug crítico aberto numa sexta-feira à tarde, num calendário de segunda a sexta-feira das 09:00 às 18:00, com um objectivo de primeira resposta de 30 minutos e um objectivo de resolução de quatro horas.
| Quando | Evento | O que o plugin faz |
|---|---|---|
| Sex 15:00 | Aberta | A primeira política que corresponde é associada e os seus cronómetros arrancam. Restam três horas de trabalho hoje, pelo que uma passa para segunda-feira. |
| Sex 15:20 | Primeira resposta | Um comentário público de um agente pára o cronómetro de primeira resposta aos 20 minutos, dentro do objectivo de 30 minutos. |
| Sex 16:00 | Em espera | A resolução entra em pausa. Quando o cliente responde na segunda-feira, o prazo avança exactamente o tempo de trabalho perdido. |
| Segunda-feira | Aviso a 75% | O e-mail de aviso é enviado enquanto ainda há tempo para agir. |
| Segunda-feira | Resolvida | O tempo consumido e o cumprimento ou não do objectivo ficam registados, e nunca mais mudam. |
| Consumido | Saúde |
|---|---|
| Abaixo de 75% | Saudável |
| 75% | Em risco |
| 90% | Crítico |
| 100% | Violado |
| Em espera | Em pausa |
| Objectivo cumprido | Concluído |
JSON para cada ecrã
Uma API JSON só de leitura cobre tudo o que os ecrãs mostram. Autentica-se com uma chave de API normal do Redmine e respeita as mesmas permissões que as páginas.
| Método | Endpoint | Devolve |
|---|---|---|
| GET | /sla/issues/:id.json | O SLA de uma tarefa |
| GET | /sla/issues.json | Tarefas com SLA, filtráveis |
| GET | /projects/:id/sla/issues.json | Tarefas com SLA de um projecto |
| GET | /sla/timeline/:id.json | Cronologia de uma tarefa |
| GET | /sla/dashboard.json | Contadores do painel e cumprimento |
| GET | /sla/reports/:report.json | Qualquer um dos quatro relatórios |
| GET | /sla/policies.json | Políticas e respectivos objectivos |
| GET | /sla/calendars.json | Calendários e horários de trabalho |
Ler o SLA de uma tarefa
Envie a sua chave no cabeçalho X-Redmine-API-Key. A resposta traz a política, o calendário, a saúde global e uma entrada por objectivo, com o estado, o prazo e o tempo consumido. Use-a para mostrar contagens decrescentes de SLA num ecrã de parede, ou para alimentar os seus próprios relatórios com os números de cumprimento.
Seis permissões, atribuídas por perfil
O SLA é um módulo de projecto normal do Redmine. Active-o nos projectos que mede e dê a cada perfil apenas o que ele precisa. Os administradores do Redmine têm sempre as duas permissões globais.
| Permissão | Âmbito | O que permite |
|---|---|---|
| view_sla | Projecto | Ver o painel de SLA nas tarefas, a lista de tarefas com SLA e a cronologia |
| view_sla_dashboard | Projecto | Ver o painel geral de SLA |
| view_sla_reports | Projecto | Ver e exportar os relatórios de SLA |
| manage_sla | Projecto | Editar as configurações de SLA do projecto e recalcular o SLA de uma tarefa |
| manage_sla_policies | Global | Criar e editar políticas e regras de pausa |
| manage_sla_calendars | Global | Criar e editar calendários e feriados |
Corre onde o seu Redmine já corre
| Ambiente | Estado | Notas |
|---|---|---|
| Redmine 7.x | Suportado | Testado no Redmine 7.0 com Rails 8.1 e Ruby 3.4.2. As capturas de ecrã desta página são da versão 7.0. |
| Redmine 6.x | Suportado | |
| Redmine 5.x | Suportado | Requer a tarefa de assets dos plugins depois de migrar |
| Redmine 4.x | Suportado | A 4.0 é a versão mínima declarada pelo plugin |
| Bases de dados | Suportado | PostgreSQL, MySQL, MariaDB e SQLite, sem SQL específico de nenhuma base de dados |
| Gems adicionais | Nenhuma | Sem Redis, sem Sidekiq. Uma entrada de cron ou um temporizador do systemd executa a verificação em segundo plano. |
| Núcleo do Redmine | Intacto | Nenhum ficheiro do núcleo é editado, pelo que as actualizações do Redmine não são afectadas |
Instalação em três passos
Requer acesso por shell e a possibilidade de executar tarefas rake. Faça sempre uma cópia de segurança antes de instalar uma extensão.
cd /path/to/redmine # the package arrives by email, or from your download link unzip redmine_sla-1.0.0.zip -d plugins/
RAILS_ENV=production bundle exec rake redmine:plugins:migrate # Redmine 4 and 5 only (Redmine 6+ serves plugin assets directly) RAILS_ENV=production bundle exec rake redmine:plugins:assets touch tmp/restart.txt # or systemctl restart redmine
# every five minutes: evaluate timers that are due, safe to run repeatedly */5 * * * * cd /path/to/redmine && RAILS_ENV=production bundle exec rake redmine_sla:process >> log/sla.log 2>&1
# Administration → SLA → create the default business calendars, then follow the checklist # Administration → SLA → Policies → write one policy: targets, calendar, conditions # Project → Settings → Modules → tick SLA for each project you measure # Administration → Roles and permissions → grant the SLA permissions
O plugin altera ficheiros do núcleo do Redmine?
O que acontece aos SLA existentes quando edito uma política?
Precisa de Redis, Sidekiq ou gems adicionais?
Clientes ou projectos diferentes podem ter SLA diferentes?
E as tarefas que já existiam antes de o instalar?
Desinstalar é seguro?
As capturas de ecrã são reais?
Preços
Um servidor
Uma instância do Redmine · utilizadores ilimitados · 12 meses de atualizações.
Vários servidores
Servidores Redmine ilimitados · utilizadores ilimitados · 12 meses de atualizações.