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

Fasáda Metrics

Odporúčaným vstupným bodom je RoundlyConsulting\Metrics\Facades\Metrics. Jej koreňom je RoundlyConsulting\Metrics\MetricsManager — singleton v kontajneri (dostupný aj pod názvom metrics), ktorý metriky registruje, vyhodnocuje a invaliduje. Celé API na jednom mieste:

use RoundlyConsulting\Metrics\Enums\Period;
use RoundlyConsulting\Metrics\Facades\Metrics;

// Build inline — one builder per metric type
Metrics::value()->count(User::query())->range(Period::Today)->result();
Metrics::trend()->count(User::query(), 'created_at')->daily()->toArray();
Metrics::progress()->sum(Order::query(), 'total')->target(10000)->toArray();
Metrics::partition()->count(User::query(), 'plan')->toArray();

// Registry
Metrics::register('revenue', MonthlyRevenueGoal::class);
Metrics::get('revenue')->range('MTD')->toArray();
Metrics::has('revenue'); Metrics::keys(); Metrics::all();

// Many at once, and cache invalidation
Metrics::dashboard(['users', 'revenue'])->range(Period::ThisMonth)->toArray();
Metrics::forget('revenue');
Metrics::flushCache();

Metrics::unregister('revenue');

Všetky metódy

MetódaVraciaÚčel
value() / trend() / progress() / partition()rozpracovaný builderVytvorí metriku inline.
register(string $key, string|Metric|Closure $metric)MetricsManagerPridá metriku do registra (dá sa reťaziť).
unregister(string $key)MetricsManagerOdoberie ju (dá sa reťaziť).
get(string $key)MetricVyhodnotí jednu metriku (novú kópiu) označenú jej kľúčom.
has(string $key) / keys() / all()bool / list<string> / array<string, Metric>Prehľad registra.
dashboard(array $keys)DashboardVyhodnotí viac metrík naraz.
forget(string|Metric $metric)voidZabudne cachované výsledky jednej metriky.
flushCache()voidZabudne všetky cachované výsledky.
fake(array $results = [])MetricsFakeZapne zaznamenávajúci fake (pozrite Testovanie).
  • Buildery vracajú rozpracovanú metriku — PendingValue, PendingTrend, PendingProgress alebo PendingPartition — s rovnakým fluent API ako trieda metriky; pozrite Agregačné funkcie a Triedy metrík.
  • get() pri nezaregistrovanom kľúči vyhodí UnknownMetricException, rovnako forget() — pozrite Register metrík a Cachovanie.
  • Alias fasády je Metrics; abstraktná základná trieda, od ktorej dedí každá metrika, je RoundlyConsulting\Metrics\Metric.

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.