fdekker/log-viewer-bundle
A Laravel log viewer bundle for browsing, searching, and filtering application log files from a web interface. Quickly inspect errors and stack traces, filter by level or date, and debug production issues without opening log files on the server.
Architecture fit
The package is a Symfony bundle (fdekker/log-viewer-bundle), not a Laravel package. That distinction is structural, not cosmetic:
Bundle subclass, a Symfony DI extension, and a config tree — the three artifacts Laravel has no runtime equivalent for. Laravel's container understands service providers, facades, and config/*.php; it does not boot Symfony bundles.routes/web.php, controllers on Illuminate's base classes, and Blade views.security.yaml firewall model, which has no counterpart in Laravel's gate/policy/middleware stack.For a Laravel-standardized codebase, architecture fit is poor. The realistic value is as a reference implementation or as a source of a reusable log-parsing component, not as a dependency.
Integration feasibility
composer require into a Laravel app: not feasible without pulling in the Symfony framework bundle layer, which conflicts with Laravel's own bootstrapping and is unsupportable.HttpFoundation, no DependencyInjection imports). This must be verified in a spike before any commitment.Technical risk
Key questions
composer.json and namespace imports answers this.Stack fit
opcodesio/log-viewer (Laravel-native, active, widely adopted), Laravel Telescope for request-level debugging, Laravel Pulse for aggregate health, or push logs to an external aggregator and use its UI.Migration path (if porting the parser)
app/Support/LogViewer/ or an internal Composer package (acme/log-parser) with no framework imports, so it can be tested in isolation and reused later.config/log-viewer.php) for allowed paths, drivers, and page size.app()->environment() !== 'production' unless explicitly enabled.{!! !!} a log line.Compatibility
config/logging.php output, not Symfony's.Sequencing
Maintenance
Support
opcodesio/log-viewer" exit criterion, and a review cadence tied to PHP/Laravel major releases.Scaling
laravel.log will exhaust memory unless the implementation streams and paginates. Validate the parser reads in chunks and never file_get_contents the whole file.Failure modes
Ramp-up
How can I help you explore Laravel packages today?