saade/filament-laravel-log
View and manage Laravel log files directly from your Filament admin panel. Browse, filter, and search log entries, tail logs, clear files, and debug production issues without SSH or server access.
Architecture fit
This package is a narrow, additive capability: a Filament page that reads and clears Laravel log files from storage/logs. As a TPM, scope it as an internal operations convenience layer, not an observability platform. It fits monolithic or single-node Laravel apps that already run Filament and write local file logs. It does not fit containerized, autoscaled, serverless, or multi-service estates where logs are ephemeral or shipped to a central store — there the page would show a partial or misleading slice of reality, which is worse than no page at all. Position it alongside, not instead of, error tracking, alerting, and centralized log search.
Integration feasibility
Effort is low and bounded: Composer install, register the plugin in the target PanelProvider, configure access, deploy. There is no schema or data migration, so rollback is a config revert. The real feasibility question is authorization, not installation: confirm whether the plugin exposes a gate or policy hook. If it only inherits panel access, the TPM decision is to isolate the Logs page behind a dedicated panel, a dedicated guard, or an environment gate — treat that as an explicit acceptance criterion rather than an implementation detail. v4.2.0's tolerance for missing directories, odd files, and panels where the plugin isn't registered lowers staged-rollout risk meaningfully, because a misconfiguration won't take down the whole admin panel.
Technical risk Two risks dominate and both are product risks, not just engineering ones. First, data exposure: Laravel logs routinely contain PII, secrets, SQL, request payloads, and internal hostnames. Putting them behind a web session widens the blast radius of any compromised admin account. Second, destructive clearing: it can destroy forensic evidence mid-incident. v4.2.0 mitigates the worst of the file-handling concern by restricting read and clear to files the page actually lists, and by making the clear action's effect explicit in UI copy — but it still ships no audit trail, no redaction, no multi-tenant isolation, and no separate permission for read vs. clear. Supply-side risk is real but manageable under MIT: 121 stars, zero dependents, single maintainer. Budget for the possibility of vendoring or forking; that is a contingency, not a plan.
Key questions
composer.json, and is the Filament major we run actually exercised in CI? (The prose describes Filament v3; v4.2.0 claims Filament 5 support — reconcile this before committing.)Stack fit Adopt only where Laravel + Filament is already the admin surface and logs are genuinely local files. The value proposition to stakeholders is fewer "can you check the logs?" escalations and faster triage for support and on-call — not new customer capability. Keep it off the customer-facing roadmap and out of any compliance narrative. If Filament isn't already in the product, the dependency cost of introducing it solely for this page is not justified.
Migration path
Purely additive; no data migration. Upgrade from 4.1.x to 4.2.0 is a fixes-plus-Filament-5-support release with no breaking changes called out, so treat it as low risk — but verify whether the rebuilt Ace editor requires republishing assets in the deploy pipeline. Pin ^4.2 (or an exact 4.2.x) and record the rationale. Where teams currently SSH and tail for routine checks, this replaces only the read/clear convenience path; retain server access or a managed logging service as the documented fallback.
Compatibility Validate the exact version matrix rather than assuming parity across Filament majors. Treat Filament 5 support as the less-proven path until it has field exposure — ideally ride it in on a planned Filament upgrade with a rollback point before the panel provider change. Confirm asset-publishing and CSP implications from the editor rebuild, and check translation coverage and UI copy in each locale you ship. Note the release metadata inconsistency (a 2026-10-08 release date against a Filament v3 description) and resolve it during validation rather than assuming either is authoritative.
Sequencing
Maintenance Small, single-maintainer dependency with weak adoption signals: one or two maintainers, zero dependents, limited community validation. Pin the version, watch releases, and read the diffs on security-relevant changes rather than relying on changelogs alone. Assign a named owner for upgrade review tied to Filament and Laravel major bumps. The MIT license is the mitigation strategy — the escape hatch is forking, so keep the integration surface small enough that a fork is a day of work, not a quarter.
Support The upside is concrete: support and QA self-serve basic log checks, and on-call gets a faster first look without shell access. The downside is a new class of ticket — "the log page is empty/wrong" — which usually means logs aren't where the page looks (different disk, containerized FS, external driver) rather than a plugin defect. Publish a one-page runbook covering where logs live, what the page does and doesn't show, and who to escalate to. Restrict clearing to break-glass and say so in the runbook.
Scaling The design assumes a single filesystem view of logs. It degrades in predictable ways: multi-node deployments show only the node that served the request; autoscaled containers lose logs on restart; non-local drivers show nothing. Large log files raise a memory and browser-render question, so set a practical ceiling during the pilot and document it. Concurrency is unremarkable — two admins reading simultaneously is fine; a clear during an incident is the scenario to guard against.
Failure modes
Ramp-up Low for end users — the UI is a Filament page and needs a short demo, not training. The real ramp-up cost is on the platform side: someone must own the access model, the runbook, the fallback path, and the upgrade watch. Budget a small, finite spike for security review plus a pilot window, and gate production exposure on a documented decision (RBAC in place, clear disabled or break-glass only, success metrics met) rather than letting it drift into production by default. If the pilot shows neither reduced time-to-diagnose nor fewer escalations, remove the dependency — the cost of carrying an unmaintained log reader is not zero.
How can I help you explore Laravel packages today?