SLA má dvě klíčové metriky — reakční dobu (kdy někdo začne pracovat na problému) a dobu řešení (kdy je problém vyřešen). V praxi se ve smlouvách nejčastěji prohrává v tom, co tyto metriky neměří.
Past první — vyloučení vyšší moci. Standardní formulace „SLA neplatí v případě selhání třetí strany" je v cloudovém světě prakticky volná karta — pokud Azure má výpadek, dodavatel SLA neplní a vy nemáte nárok na nic. Rozumná formulace je „SLA neplatí v případě selhání třetí strany, pokud dodavatel pro danou službu nezajistil multi-region redundanci, která je v ceně paušálu uvedena". Bez druhé části je první část past.
Past druhá — neexistující penalizace. „V případě nesplnění SLA má klient nárok na slevu 10 procent z měsíčního paušálu" zní hezky, ale 10 procent z 30 tisíc je 3 tisíce — tolik vás stojí jediná hodina práce vašeho IT člověka, který výpadek řeší. Penalizace musí být úměrná dopadu, ne paušálu.
Past třetí — výjimky pro plánovanou údržbu, která není definovaná. Pokud smlouva říká „SLA neplatí během plánované údržby" bez upřesnění, jak často a v jakou dobu, máte ve smlouvě díru velikou jako kostel. Rozumná formulace specifikuje maintenance windows (např. úterý 02:00 až 04:00) a stanoví minimální oznámení (typicky 7 dní předem).
U projektu pro projekční firmu jsme nastavili reakci na incident pod 45 minut s monitoringem, který volá hlavního admina automaticky přes systém alerting. To je realistický cíl pro firmu, která nepotřebuje 24/7 on-call tým, ale chce mít jistotu, že incident neleží v inboxu přes víkend.
Past čtvrtá — chybějící kapacitní limit. „Reakce do 1 hodiny" platí, dokud máte jeden incident měsíčně. Pokud jich máte deset současně, žádné SLA bez kapacitního závazku (počet souběžných incidentů, počet vývojářských hodin v ceně paušálu) není reálně vymahatelné.