Open source
Alerts for Laravel
composer require roundly-consulting/alerts-for-laravelPrehľad
Monitoring a upozorňovanie priamo vo vašej Laravel aplikácii, na vašej infraštruktúre. Definujte kontroly — vstavané kontroly databázy, cache, fronty, úložiska a HTTP, vlastné triedy alebo inline closures — a pripojte ich podľa cronu k akémukoľvek modelu s príjemcami notifikácií. Balík otvorí alert, keď kontrola zlyhá, s obmedzovaním upozorní správnych ľudí, eskaluje, kým zlyhanie trvá, a po potvrdenej obnove alert zatvorí — všetko cez váš plánovač, frontu a notifikačné kanály. Licencia MIT, bez externých dodávateľov: parser cronu, časové limity aj výpočet percentilov sú natívne.
Čo získate
Vstavané aj vlastné kontroly
Kontroly databázy, cache, fronty, úložiska a HTTP hneď po inštalácii, vlastné triedy Check aj inline closures — každá vráti ok, warning, failed alebo skipped.
Fasáda, DI alebo akcie
Jedna fasáda Health, injektovateľný HealthManager za ňou alebo jednoúčelové akcie — a k tomu Health::fake(), zaznamenávajúci fake pre vaše testy.
Plánovanie pre každého vlastníka
Pripojte kontroly k akémukoľvek modelu — tímu, tenantovi, projektu — podľa cronu; každý vlastník upozorní svojich ľudí.
Bez falošných poplachov
failAfter() a recoverAfter() podmienia alert po sebe idúcimi výsledkami, takže jeden výkyv nikoho nezobudí.
Eskalácia a smerovanie kanálov
Politiky prah ⇒ skupina s kanálmi pre každú úroveň; každá úroveň sa spustí práve raz, aj pri prekrývajúcich sa behoch.
Údržbové okná
Stlmte kontrolu, tag alebo všetko — na určený čas alebo pre jedného vlastníka. Behy sa zapisujú ďalej, notifikácie mlčia.
Stav a história
Stavový report, JSON endpoint a súhrn v CLI, k tomu dostupnosť a p95 latencia z každého zaznamenaného behu.
Dokumentácia
Inštalácia
Inštalácia cez Composer, publikovanie a spustenie migrácií a voliteľne publikovanie konfigurácie a prekladov.
Konfigurácia
Všetky kľúče konfigurácie s predvolenými hodnotami a env premennými — modely, typ kľúča, job, plánovanie, endpoint, stlmenie, história, eskalácia.
Databázová schéma a typy kľúčov
Štyri tabuľky, ich stĺpce a ako key_type typuje polymorfné stĺpce vlastníka pre modely s kľúčmi bigint, UUID alebo ULID.
Fasáda Health
Celá fasáda Health na jednom mieste: register kontrol, handle for($owner), prístup silences() a metódy pre plánovač a údržbu.
DI a akcie
Injektujte HealthManager, koreň fasády, alebo volajte triedy akcií priamo — s úplnou mapou metód fasády na akcie.
Registrácia kontrol
Registrujte triedy kontrol alebo nakonfigurované inštancie cez fasádu Health alebo config a prezerajte register podľa kľúča.
Vstavané kontroly
Kontroly databázy, cache, fronty, úložiska a HTTP pingu — ich voľby, prahy, kľúče a predvolená notifikácia, ktorú prinášajú.
Vlastné kontroly
Rozšírte Check, implementujte check() a notification(), čítajte meta naplánovaného riadka a vracajte výsledky ok, warning, failed či skipped.
Inline kontroly cez closure
Definujte jednorazové kontroly ako closures cez Health::define(), nastavte ich fluentne a plánujte či spúšťajte podľa kľúča.
Modely vlastníkov
Implementujte HasNotifiablesForAlerts a použite UsesHealthChecks na modeli, ktorý vlastní kontroly a určuje, koho upozorniť.
Plánovanie kontrol
Pripojte kontrolu k vlastníkovi cez Health::for($owner)->monitor() — predvoľby, cron, obmedzenie, prahy, tagy, smerovanie a meta.
Spúšťanie kontrol
Ako plánovač, Health::runDue() a job vo fronte spúšťajú splatné kontroly — a ako Health::for($owner)->run() spustí jednu synchrónne.
Notifikácie a obmedzovanie
Kto a kedy dostane notifikáciu, obmedzenie opakovaných notifikácií, pribalená notifikácia, smerovanie cez notifyVia() a vlastné notifikácie.
Kolísanie a potvrdenie obnovy
Vyžadujte po sebe idúce zlyhania pred otvorením alertu a po sebe idúce úspechy pred jeho zatvorením, aby kolísajúce služby nerušili.
Eskalačné politiky
Upozorňujte širšie skupiny, keď zlyhanie trvá — politiky prah ⇒ skupina, pomenované skupiny na vlastníkovi, globálny default a udalosti práve raz.
Údržbové okná a stlmenie
Stlmte kontrolu, tag alebo všetko počas nasadenia — na určený čas alebo pre jedného vlastníka — pričom behy a počítadlá sa zapisujú ďalej.
Stavové reporty a health endpoint
Aktuálny stav čítajte v kóde, v CLI alebo cez voliteľný JSON endpoint, ktorý vracia 200 alebo 503 a filtruje podľa tagu.
História behov, dostupnosť a latencia
Každý beh sa zapíše aj s latenciou — zisťujte dostupnosť a p95 latenciu za ľubovoľné obdobie a starú históriu čistite automaticky.
Časové limity a chyby
Obmedzte kontroly časovým limitom, spoľahnite sa na behy odolné voči výnimkám a poznajte všetky výnimky, ktoré balík vyhadzuje.
Udalosti
HealthCheckFailed, HealthCheckRecovered a HealthCheckEscalated — kedy sa spúšťajú a čo nesú.
Príkazy Artisan
Spustite kontrolu na požiadanie, vypíšte a preskúmajte kontroly, zobrazte stav pre CI, čistite históriu a čítajte sekciu about.
Testovanie
Nahraďte manažér cez Health::fake() a overujte behy bez vedľajších účinkov, alebo testujte celú cestu s factories a fakes Laravelu.
Požiadavky
PHP 8.4+, Laravel 12 alebo 13, bežiaci plánovač a queue worker a dva balíky Roundly, ktoré Composer nainštaluje za vás.
Prejavte lásku k open source
Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.
Ďalšie spôsoby podpory vrátane kryptomienOdoslaním daru súhlasíte s našimi podmienkami prijímania darov.
Chcete to zabudovať do svojho produktu?
Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.