Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Laravel Log Viewer

Laravel Log Viewer Laravel Package

everysecond/laravel-log-viewer

Lightweight Laravel/Lumen log viewer. Install via Composer and add a route to LogViewerController to browse application logs in the browser. No public assets or vendor routes required; supports rotated logs and works across multiple Laravel versions.

View on GitHub
Deep Wiki
Context7

A Laravel log reader Fork from Rap2hpoutre/laravel-log-viewer

Frequently asked questions about Laravel Log Viewer
Does this package work with Laravel 10 or PHP 8.2+?
The package was last updated in 2020 and primarily supports Laravel 4.2–7. While it may work with Laravel 10 or PHP 8.2+, you’ll likely need to fork or patch it for compatibility, especially due to Monolog updates and route binding changes. Test thoroughly in a sandbox before production use.
How do I secure access to the log viewer in production?
The package doesn’t include built-in authentication, so you must manually protect the route using middleware like `auth`, `throttle`, or IP whitelisting. For sensitive environments, consider adding role-based access control or rate limiting to prevent log exposure.
Can I customize the log viewer’s UI or add search/filter functionality?
The package provides a minimal, self-contained viewer with no frontend dependencies. While you can’t easily extend its UI, you could fork the project and modify the Blade template or integrate it with a custom frontend solution. Search/filter would require backend logic adjustments.
Will this work with log rotation (e.g., Laravel’s default 7-day rotation)?
Yes, the package supports rotated logs and will display them as long as they remain in the `storage/logs` directory. However, once logs are deleted due to rotation policies, they won’t be accessible. For long-term retention, consider pairing it with a dedicated log management tool.
Are there alternatives to this package for Laravel log viewing?
Modern alternatives include Laravel Horizon (for queue-based apps), third-party SaaS tools like Papertrail or Datadog, or packages like `spatie/laravel-logging` for structured logging. For a lightweight solution, `beberlei/laravel-log-viewer` (a fork) or custom CLI tools like `tail` may also fit your needs.
How do I exclude sensitive logs (e.g., API keys, PII) from the viewer?
The package doesn’t natively redact logs, but you can pre-process logs using Laravel’s logging channels or middleware to filter sensitive data before it reaches the viewer. Alternatively, manually exclude files by modifying the package’s log path logic or using `.env` overrides.
Does this package work with custom log paths or non-standard storage locations?
By default, it reads logs from `storage/logs/`. To use a custom path, you’ll need to modify the package’s configuration or override the `LogViewerController` to specify your log directory. Check the `LaravelLogViewerServiceProvider` for configurable options.
Will this impact performance in production with large log files?
The package reads logs directly from files, so performance depends on your server’s I/O and log file size. Large logs (e.g., >10MB) may slow down rendering. For production, consider using a dedicated log management system or implementing lazy-loading for log entries.
Can I integrate this with Lumen’s minimal setup without conflicts?
Yes, the package explicitly supports Lumen. After installing via Composer, register the service provider in `bootstrap/app.php` and define the route in `app/Http/routes.php` with the correct namespace. It won’t conflict with Lumen’s core features since it’s a self-contained viewer.
How do I test this package in a CI/CD pipeline or automated environment?
Since the package relies on file-based logs, mock the `storage/logs` directory in your tests using temporary files or symlinks. Test the route endpoint with HTTP requests (e.g., using PHPUnit’s `Http` tests) and verify log parsing for edge cases like empty files or malformed entries.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
jayeshmepani/jpl-moshier-ephemeris-php
elnasnato/laraliveui
labrodev/rest-sdk
sampaui/sampaui
babelqueue/php-sdk
facebook/capi-param-builder-php
babelqueue/symfony
hamzi/corewatch
minionfactory/raw-hydrator
hexters/coinpayment
rjcodes/rjcms
act-training/laravel-permissions-manager
alimarchal/laravel-chart-of-accounts
babenkoivan/elastic-scout-driver
mkwebdesign/filament-watchdog-v5
renatomarinho/laravel-page-speed
zedmagdy/filament-business-hours
renatovdemoura/blade-elements-ui
devgeek/beacon-admin
benjamin-rqt/data-watcher-bundle