Avaldatud projekt IncidentRelay arendab avatud süsteemi vahetuste korraldamiseks, häirete suunamiseks ja intsidendi haldamiseks, mida käitatakse kohalikul serveril (self-hosted). Projekt on suunatud SRE, DevOps ja infrastruktuuri meeskondadele, kes vajavad kohapeal paigaldatavat alternatiivi SaaS-teenustele vahetuste haldamiseks (on-call management), eskaleerimisreeglite rakendamiseks ja intsidendireageerimiseks. Projekti kood on kirjutatud Pythonis ja avaldatud MIT litsentsi alusel.
IncidentRelay võtab vastu sündmusi jälgimisseadmetest, seondab need suunamisreeglitega ja edastab teated vastutavatele vahetusmeeskondadele või -gruppidele. Süsteemis on rakendatud vahetuste ajakavad, rotatsioonid, vahetuste ümberdefineerimine, intsidendi kätte saamise kinnitamine, intsidendi staatuse muutmine resolved-iks, meeldetuletused, eskalatsioonid ja silences, et alla suruda tuntud või planeeritud häireid.
Toetatakse sündmuste vastuvõttu Prometheus Alertmanagerist, Zabbixist ja kohandatud webhook'idest. Teavituste saatmiseks on saadaval kanalid nagu Mattermost, Telegram, e-post, webhook ja hääleteenused. Mattermostis ja Telegramis võivad teavitused sisaldada kinnituse ja probleemide lahendamise tegevusi, mis võimaldab tegeleda sündmusega ilma eraldi liidesesse sisenemiseta.
IncidentRelay's on rakendatud rühmade ja meeskondade ligipääsul põhinev mudel. See võimaldab eristada ajakava, marsruutide, teavituskannete ja häirete nähtavust erinevate meeskondade vahel. Automatiseerimiseks on saadaval HTTP API ning integratsioonide jaoks kasutatakse bearer-token'e ja marsruutitoken'e.
Projekt võib toimida vahesüsteemina monitorimise ja teavituste kanalite vahel: Alertmanager või Zabbix saadab sündmuse IncidentRelay'sse, misjärel süsteem määrab meeskonna, hetkel aktiivse välja, rakendab marsruutimisse reeglid ja saadab teavituse soovitud kanalisse. Kinnitamata juhtumite puhul võivad toimuda korduvaid meeldetuletusi ja eskaleerimine järgmisele vahetuse osalejale.


Allikas: opennet.ru
