NovinkaZverejnili sme 50+ Laravel balíkov ako open source
Custom AI apps, agents and automation — Roundly ConsultingRoundly
Všetky balíky

Open source

Metrics for Laravel

Inštalácia
composer require roundly-consulting/metrics-for-laravel
Vyžaduje: PHP ^8.4 · Laravel ^12.0|^13.0

Prehľad

Natívny engine metrík pre Laravel. Nasmerujte ho na ľubovoľný Eloquent dotaz a dostanete metriku pripravenú pre dashboard — jedno číslo so zmenou oproti predchádzajúcemu obdobiu, časový rad pre grafy, plnenie cieľa alebo rozpad podľa skupín pre koláčové a stĺpcové grafy. Postará sa o časové obdobia, agregácie, zoskupovanie v čase, cachovanie aj formátovanie čísel a vráti čisté dáta pripravené na JSON pre akýkoľvek frontend — metriky v štýle Novy, no bez Novy. Žiadne migrácie, tabuľky ani UI; licencia MIT, postavené na oficiálnych komponentoch Laravelu a dvoch malých pomocných balíkoch Roundly.

Čo získate

Štyri typy metrík

Hodnota, trend, progres a členenie — štyri tvary, z ktorých sa skladá takmer každá dlaždica dashboardu, inline aj ako triedy.

Obdobia a porovnanie

20 prednastavených období, vlastné okná a časové pásmo pre každú metriku, so zmenou oproti predchádzajúcemu či ľubovoľnému obdobiu.

Trendy pripravené na grafy

Intervaly od minúty po rok, doplnené medzery a viac sérií naraz, prenositeľné medzi MySQL, MariaDB, PostgreSQL a SQLite.

Prehľadné členenia

Top-N rozpady so zvyškovou skupinou „Other“ a zobrazované popisy namapované zo surových kľúčov skupín.

Register a dashboardy

Zaregistrujte metriky pod kľúčmi, načítajte celý dashboard jedným volaním a vráťte ho priamo z controllera ako JSON.

Cache a udalosti

Voliteľné cachovanie výsledkov s cielenou invalidáciou na každom store a udalosť MetricCalculated na logovanie pomalých metrík.

Fasáda alebo DI a zaznamenávajúci fake

Použite fasádu Metrics alebo injektujte MetricsManager s rovnakým API; Metrics::fake() podstrčí výsledky a zaznamená, čo sa vyhodnotilo.

Dokumentácia

Inštalácia

Inštalácia cez Composer — provider aj fasáda Metrics sa načítajú automaticky, migrácie netreba a konfigurácia je voliteľná.

Konfigurácia

Každý konfiguračný kľúč a jeho predvolená hodnota — časové pásmo, predvolené obdobie, jednotka a presnosť, cache, popis skupiny a drivery trendov.

Rýchly štart

Vytvorte metriku inline jedným fluent výrazom cez fasádu Metrics a potom prečítajte jej typovaný výsledok alebo vráťte obálku pre JSON.

Fasáda Metrics

Celé API na jednej fasáde — inline buildery, register metrík, dashboardy, invalidácia cache a zaznamenávajúci fake.

Bez fasády

Injektujte MetricsManager s rovnakým API bez statických volaní alebo používajte triedy metrík samostatne — bez registra aj fasády.

Triedy metrík

Definujte znovupoužiteľné triedy Value, Trend, Progress a Partition cez calculate() a setup(), plus fluent API spoločné pre všetky metriky.

Agregačné funkcie

count, average, sum, max a min nad ľubovoľným Eloquent dotazom — agregovaný stĺpec, dátumový stĺpec a rešpektovanie scopes.

Časové obdobia

20 prednastavených období od dneška po minulý rok, vlastné okná, časové pásmo pre každú metriku a enum Period pre výbery a validáciu.

Porovnanie období

Zobrazte zmenu oproti predchádzajúcemu obdobiu alebo porovnajte s ľubovoľným rozsahom cez compareTo() — pre metriky hodnoty a progresu.

Trendy

Časové rady v intervaloch od minúty po rok, s dopĺňaním medzier, viacerými sériami cez groupBy() a podporou štyroch databáz.

Členenie (partition)

Rozpady pre koláčové a stĺpcové grafy — od najväčšej skupiny, obmedzené na top N so skupinou „Other“ a so zobrazovanými popismi.

Výstup a výsledky

Obálka, ktorú vracia každá metrika, tvar výsledku každého typu metriky a typované prístupové metódy objektov výsledkov.

Formátovanie čísel

Zobrazte hodnoty ako menu, percentá či skrátené čísla cez formatUsing() — surové čísla zostanú nedotknuté vedľa nich.

Register metrík

Zaregistrujte metriky pod krátkymi kľúčmi ako triedy, closures či inštancie a potom ich odkiaľkoľvek načítajte podľa názvu.

Dashboardy

Načítajte viacero zaregistrovaných metrík jedným volaním do jednej obálky s kľúčmi, so spoločným obdobím a voliteľne aj časovým pásmom.

Cachovanie

Voliteľné cachovanie výsledkov — globálne alebo pre jednu metriku cez cache(), cacheFor(), cacheKey() a dontCache() — plus forget() a flushCache().

Udalosti

MetricCalculated sa spustí pri každom vyhodnotení s kľúčom, obdobím, trvaním a príznakom cache — pripravená na logovanie pomalých metrík.

Artisan príkazy

Vypíšte všetky zaregistrované metriky a vyhodnoťte jednu priamo v termináli, aby ste videli jej obálku — voliteľne s iným obdobím.

Rozšírenie

Pridajte podporu trendov pre ďalšiu databázu cez QueryExpression a napájajte metriky z doménových udalostí iných balíkov.

Výnimky

Všetky výnimky dedia od MetricsException — čo ktorá znamená, kedy sa vyhodí a ako zachytiť celú rodinu naraz.

Testovanie

Podstrčte výsledky metrík cez Metrics::fake(), overte, ktoré metriky sa vyhodnotili či zabudli, a testujte čísla nad naplnenými riadkami.

Požiadavky

PHP 8.4+ a Laravel 12 alebo 13; pre trendové metriky hneď po inštalácii MySQL, MariaDB, PostgreSQL alebo SQLite.

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 kryptomien

Odoslaní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.