Telemetry Insights for Laravel
The stateful half of observability for Laravel. An issue ledger, incident correlation, alerting and digests on top of the Telemetry UI, in four tables of its own, so the dashboard stays a read-only window onto your telemetry stores.
The Telemetry UI queries Tempo, Loki and Prometheus and writes nothing back. That is worth keeping, so everything that has to remember something lives here instead, in four tables of its own: which error groups the team has already decided about, which ones started together, and what is worth waking someone for.
A cache node dies at 02:14. The application does not report that the cache is down. It reports a connection refused in the session handler, a type error where a cached array came back empty, a missing session store in middleware, and an undefined key in the rate limiter. Four fingerprints, four places in the code, and nothing that mentions the cache. They are one event, and this package says so, because it knows which spans are outbound calls and which attributes identify an instance.
What a Dashboard Cannot Remember
Issue Ledger
Every error group plus the decision your team made: open, resolved, ignored or snoozed, set from an artisan command or your own code. A resolved group that fires again is a regression, detected and reopened automatically.
Incident Correlation
Errors that started together, folded into one event with a named cause, ranked evidence and a confidence you can check. Where the dashboard knows an exporter watching the failing dependency, the incident asks it too.
Spike Detection
A known issue firing several times harder than in the window before, with guards so small numbers and brand new issues do not read as a spike.
Alerts on Events, Not Only Numbers
Rules on new issues and incidents, with error rate, p95, throughput and any metric as the escape hatch. Cooldowns so one broken thing pages you once, and an unreachable backend never reads as a breach.
Digests and an Assistant Brief
What is worth looking at this week, ranked, each finding carrying the route, statement or instance that identifies it, including the queries that are individually fast and run a thousand times. Add --markdown for one document to paste in with the repository open.
Act Where You Read
Resolve, snooze, ignore or acknowledge from a menu on the dashboard row, or over HTTP from your own screen. Both behind the dashboard gate. Slack, webhook or your own channel, one method to implement.
What it needs
Telemetry UI 3.0 or later, and a database of its own for four tables. Boot registers class strings only, and nothing runs until you schedule the scan, so an install that is not scheduled costs nothing.
Install
composer require cboxdk/laravel-telemetry-insights, then run the migrations for its four tables and schedule telemetry-insights:scan. The digest runs from telemetry-insights:digest, and both read through the Telemetry UI connections you already have, so there is no second place to configure a backend.