Redmine SLA
SupportEen SLA van vier uur duurt geen vier uur. Reactie en oplossing gemeten in werktijd — jouw kalenders, jouw feestdagen, jouw pauzeregels — met waarschuwing, kritieke drempel en overschrijdingsdetectie.
Meerdere servers: $399

- Redmine
- 4, 5, 6 en 7
- Doelen
- 4 onafhankelijke klokken
- Databases
- PostgreSQL, MySQL, MariaDB, SQLite
- Rapporten
- 4, met CSV-export
- Extra gems
- Geen
- Gewijzigde corebestanden
- Geen
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.
Je klok stopt wanneer je team naar huis gaat
Wie twee tijdstempels van elkaar aftrekt, wordt gestraft voor weekenden. Redmine SLA loopt je bedrijfskalender langs en telt alleen de minuten waarop je open bent. Een doel van vier uur dat vrijdag laat wordt gemeld, verloopt dus op maandag en niet dezelfde avond.
| Issue gemeld | Getelde werktijd | Deadline | Kloktijd |
|---|---|---|---|
| dinsdag 09:30 | 4h, ononderbroken | dinsdag 13:30 | 4 uur |
| vrijdag 17:00 | 1h op vrijdag, 3h op maandag | maandag 12:00 | 67 uur |
| vrijdag 17:00, maandag een feestdag | 1h op vrijdag, 3h op dinsdag | dinsdag 12:00 | 91 uur |
| Elk moment, op een 24×7-kalender | 4h verstreken | Vier uur later | 4 uur |
Kalenders ondersteunen gebroken diensten, een eigen tijdzone, eenmalige en terugkerende feestdagen en bijzondere werkdagen.
Vier klokken, elk met eigen regels
Stel alleen de doelen in die je echt belooft. Elk doel start, pauzeert en stopt op zijn eigen gebeurtenis, zodat “wachten op de klant” de oplossing kan bevriezen terwijl de eerste reactie doorloopt.
Eerste reactie: iemand heeft geantwoord
Stopt bij de eerste openbare reactie van iemand anders dan de auteur. Wat als antwoord telt, stel je per beleid in.
Bevestiging: iemand pakt het op
Stopt zodra het issue is toegewezen, of een status bereikt die jij kiest.
Oplossing: het probleem is verholpen
Stopt zodra het issue een gesloten status bereikt, of een van de oplossingsstatussen die jij kiest.
Afsluiting: het ticket is afgerond
Een apart doel voor het definitief sluiten, voor teams die eerst oplossen en later met de klant bevestigen.
Het ziet eruit als Redmine, omdat het Redmine is
Geen iframe, geen aparte app, geen tweede login. Dit zijn echte schermen van het plugin op Redmine 7.0, met een demoproject dat issues in elke SLA-toestand bevat.
Agents: het SLA-paneel op elk issue
Eén rij per doel, met de toestand, de resterende tijd, hoeveel van het doel is verbruikt en de exacte deadline.


Teamleads: de wachtrij, gesorteerd op wat dreigt mis te gaan
Filter op status, gezondheid, beleid of geschonden, sorteer op deadline, exporteer naar CSV. Dezelfde velden zijn filters en kolommen in de eigen issuelijst van Redmine.
Managers: rapporten die je aan een klant kunt voorleggen
Naleving, reactietijd, oplostijd en schendingen, gefilterd op periode, beleid, tracker en prioriteit. Elk rapport is te exporteren naar CSV.


Beheerders: beleid in gewone taal
“Wanneer de Prioriteit van het issue een van Urgent, Direct is.” Voorwaarden gebruiken echte namen uit keuzelijsten, geen record-ID’s. Voor duur kun je 30, 4h of 1d 4h invullen.




Operations: één plek om te zien dat alles werkt


Alles waar een servicedesk echt over discussieert
Discussies gaan zelden over de vraag of een ticket te laat was. Ze gaan over welke uren meetelden, wanneer de klok had moeten stoppen en wat het doel op dat moment was.
Werktijden, maar dan goed
Weekroosters met gebroken diensten, een tijdzone per kalender, vaste en terugkerende feestdagen en bijzondere werkdagen. 09:00 blijft 09:00, ook als de klok wordt verzet voor zomer- of wintertijd.
Wachten op de klant
Pauzeregels per status, globaal of per beleid. Alleen werktijd wordt teruggegeven, dus een pauze over het weekend kost niets.
Waarschuwing, kritiek, schending
Drempels gaan af vóór de deadline. Elke melding wordt één keer verstuurd via de eigen mailer van Redmine, met sjablonen die je per gebeurtenis en taal kunt aanpassen.
Het juiste beleid voor elk issue
Match op project en subprojecten, tracker, prioriteit, status, categorie, auteur, toegewezen persoon, groep of elk aangepast veld. Als meerdere beleidsregels overeenkomen, wint de laagste positie.
In de issuelijst
SLA-beleid, status, gezondheid, geschonden, deadline en resterende tijd als filters en kolommen in de issuelijst van Redmine: sorteerbaar, groepeerbaar en exporteerbaar.
Wijzigingen herschrijven de geschiedenis niet
Elke SLA bewaart een momentopname van het beleid waarmee hij is gestart. Als je volgend kwartaal een doel aanpast, blijven de cijfers van afgelopen kwartaal ongemoeid. Opnieuw berekenen is een bewuste beheerdersactie.
Wat er met één issue gebeurt
Een kritieke bug, gemeld op een vrijdagmiddag, op een kalender van maandag tot en met vrijdag 09:00 tot 18:00, met een doel van 30 minuten voor de eerste reactie en een oplossingsdoel van vier uur.
| Wanneer | Gebeurtenis | Wat het plugin doet |
|---|---|---|
| vr 15:00 | Gemeld | Het eerste passende beleid wordt gekoppeld en de klokken gaan lopen. Vandaag resteren er nog drie werkuren, dus één uur schuift door naar maandag. |
| vr 15:20 | Eerste antwoord | Een openbare reactie van een agent stopt de klok voor de eerste reactie op 20 minuten, binnen het doel van 30 minuten. |
| vr 16:00 | Wachten | De oplossing pauzeert. Als de klant maandag antwoordt, schuift de deadline precies de verloren werktijd op. |
| maandag | Waarschuwing bij 75% | De waarschuwingsmail gaat de deur uit terwijl er nog tijd is om er iets mee te doen. |
| maandag | Opgelost | De verbruikte tijd en of het doel is gehaald worden vastgelegd, en veranderen daarna nooit meer. |
| Verbruikt | Gezondheid |
|---|---|
| Onder 75% | Gezond |
| 75% | Risico |
| 90% | Kritiek |
| 100% | Geschonden |
| In de wacht | Gepauzeerd |
| Doel gehaald | Voltooid |
JSON voor elk scherm
Een alleen-lezen JSON-API dekt alles wat de schermen tonen. Authenticatie gaat met een gewone Redmine-API-sleutel, en de API volgt dezelfde rechten als de pagina’s.
| Methode | Endpoint | Geeft terug |
|---|---|---|
| GET | /sla/issues/:id.json | De SLA van één issue |
| GET | /sla/issues.json | SLA-issues, filterbaar |
| GET | /projects/:id/sla/issues.json | SLA-issues van één project |
| GET | /sla/timeline/:id.json | Tijdlijn van één issue |
| GET | /sla/dashboard.json | Dashboardtellers en naleving |
| GET | /sla/reports/:report.json | Elk van de vier rapporten |
| GET | /sla/policies.json | Beleid en bijbehorende doelen |
| GET | /sla/calendars.json | Kalenders en werktijden |
De SLA van één issue uitlezen
Stuur je sleutel mee in de header X-Redmine-API-Key. Het antwoord bevat het beleid, de kalender, de algehele gezondheid en één item per doel met de toestand, de deadline en de verbruikte tijd. Gebruik het om SLA-aftellingen op een wallboard te zetten, of om nalevingscijfers in je eigen rapportage op te nemen.
Zes rechten, toegekend per rol
SLA is een standaard Redmine-projectmodule. Schakel hem in voor de projecten die je meet en geef elke rol alleen wat hij nodig heeft. Redmine-beheerders hebben altijd de twee globale rechten.
| Recht | Bereik | Wat het toestaat |
|---|---|---|
| view_sla | Project | Het SLA-paneel op issues, de lijst met SLA-issues en de tijdlijn bekijken |
| view_sla_dashboard | Project | Het SLA-dashboard bekijken |
| view_sla_reports | Project | De SLA-rapporten bekijken en exporteren |
| manage_sla | Project | De SLA-instellingen van het project bewerken en de SLA van een issue opnieuw berekenen |
| manage_sla_policies | Globaal | Beleid en pauzeregels aanmaken en bewerken |
| manage_sla_calendars | Globaal | Kalenders en feestdagen aanmaken en bewerken |
Draait waar je Redmine al draait
| Omgeving | Status | Opmerkingen |
|---|---|---|
| Redmine 7.x | Ondersteund | Getest op Redmine 7.0 met Rails 8.1 en Ruby 3.4.2. De schermafbeeldingen op deze pagina komen uit 7.0. |
| Redmine 6.x | Ondersteund | |
| Redmine 5.x | Ondersteund | Vereist na het migreren de taak voor plugin-assets |
| Redmine 4.x | Ondersteund | 4.0 is de minimumversie die het plugin opgeeft |
| Databases | Ondersteund | PostgreSQL, MySQL, MariaDB en SQLite, zonder databasespecifieke SQL |
| Extra gems | Geen | Geen Redis, geen Sidekiq. Eén cronregel of systemd-timer voert de achtergrondcontrole uit. |
| Redmine-core | Onaangeroerd | Er wordt geen corebestand bewerkt, dus Redmine-upgrades worden niet geraakt |
Installeren in drie stappen
Vereist shell-toegang en de mogelijkheid rake-taken uit te voeren. Maak altijd een back-up voordat je een plug-in installeert.
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
Past het plugin Redmine-corebestanden aan?
Wat gebeurt er met bestaande SLA’s als ik een beleid wijzig?
Heeft het Redis, Sidekiq of extra gems nodig?
Kunnen verschillende klanten of projecten verschillende SLA’s hebben?
En issues die al bestonden voordat ik het installeerde?
Is verwijderen veilig?
Zijn de schermafbeeldingen echt?
Prijzen
Eén server
Eén Redmine-installatie · onbeperkt aantal gebruikers · 12 maanden updates.
Meerdere servers
Onbeperkt aantal Redmine-servers · onbeperkt aantal gebruikers · 12 maanden updates.