Objavljen je projekt IncidentRelay, koji razvija otvoreni sustav za organizaciju dežurstava, rutiranje obavijesti i praćenje incidenata, koji se pokreće na vlastitom poslužitelju (self-hosted). Projekt je usmjeren prema SRE, DevOps i infrastrukturnim timovima koji trebaju lokalno implementiranu alternativu SaaS uslugama za upravljanje dežurstvom, primjenu pravila eskalacije i reagiranje na incidente. Kod projekta napisan je u Pythonu i distribuiran je pod MIT licencom.
IncidentRelay prima događaje iz sustava za praćenje, uspoređuje ih s pravilima rutiranja i dostavlja obavijesti odgovornim dežurstima ili timovima. Sustav implementira rasporede dežurstava, rotacije, predefiniranje smjena, potvrdu prijema incidenta, prebacivanje incidenta u resolved, podsjetnike, eskalacije i silences za suzbijanje poznatih ili planiranih aktivacija.
Podržava prijam događaja iz Prometheus Alertmanagera, Zabbixa i proizvoljnih webhook-a. Za slanje obavijesti osigurani su kanali Mattermost, Telegram, email, webhook i glasovni provider. U Mattermostu i Telegramu obavijesti mogu sadržavati radnje za potvrdu i rješavanje problema, što omogućuje obradu incidenta bez prelaska u poseban sučelje.
U IncidentRelay-u je predviđen model diferencijacije pristupa prema grupama i timovima. To omogućuje razgraničenje vidljivosti rasporeda, ruta, kanala obavijesti i alarma među različitim timovima. Za automatizaciju je dostupan HTTP API, a za integracije koriste se bearer tokeni i route tokeni.
Projekt se može koristiti kao posrednički sloj između sustava za praćenje i kanala obavijesti: Alertmanager ili Zabbix šalje događaj u IncidentRelay, nakon čega sustav određuje tim, trenutnog dežurnog, primjenjuje pravila rutiranja i šalje obavijest u potreban kanal. Za nepotvrđene incidente mogu se izvršiti ponovni podsjetnici i eskalacija na sljedećeg sudionika rotacije.


Izvor: opennet.ru
