PHPackages                             kssadi/log-tracker - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Logging &amp; Monitoring](/categories/logging)
4. /
5. kssadi/log-tracker

ActiveLibrary[Logging &amp; Monitoring](/categories/logging)

kssadi/log-tracker
==================

A powerful, intuitive, and efficient log viewer for Laravel applications.

v3.0(1mo ago)264.8k↓28%1MITBladePHP ^8.1CI passing

Since Mar 11Pushed 1mo ago1 watchersCompare

[ Source](https://github.com/KsSadi/Laravel-Log-Tracker)[ Packagist](https://packagist.org/packages/kssadi/log-tracker)[ Docs](https://github.com/kssadi/log-tracker)[ RSS](/packages/kssadi-log-tracker/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (6)Versions (10)Used By (0)

[![Log Tracker Laravel Package](/image/log_tracker_banner.png)](https://github.com/KsSadi/Laravel-Log-Tracker)📜 Laravel Log Tracker
=====================

[](#-laravel-log-tracker)

Laravel Log Tracker is a powerful, zero-dependency package for viewing, analyzing, searching, comparing, and exporting your Laravel application logs — with a beautiful dual-theme UI, real-time dashboard, alert notifications, and full PHPUnit test coverage.

[![GitHub Repo stars](https://camo.githubusercontent.com/2698031334d181c59e5db130ebc71a4e104baaba1e6af54c7b7f691c6a382ab9/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73746172732f4b73536164692f4c61726176656c2d4c6f672d547261636b65722e737667)](https://camo.githubusercontent.com/2698031334d181c59e5db130ebc71a4e104baaba1e6af54c7b7f691c6a382ab9/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73746172732f4b73536164692f4c61726176656c2d4c6f672d547261636b65722e737667)[![Downloads](https://camo.githubusercontent.com/54fd051a5edcf9ef21c55025dd68cf6bd6ea10ff63ae3675dc62c65697fa29b9/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6b73736164692f6c6f672d747261636b6572)](https://packagist.org/packages/kssadi/log-tracker)[![GitHub license](https://camo.githubusercontent.com/490d6b1ce1bebc6070230169555b32c30f41cac857e7fa1d32533f9bb8108223/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f4b73536164692f4c61726176656c2d4c6f672d547261636b65722e737667)](https://camo.githubusercontent.com/490d6b1ce1bebc6070230169555b32c30f41cac857e7fa1d32533f9bb8108223/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f4b73536164692f4c61726176656c2d4c6f672d547261636b65722e737667)[![Packagist Version](https://camo.githubusercontent.com/81bd1e25752b4030c9dc5af32da784663f5e7495a4b888dc265e47e7e2355c4e/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6b73736164692f6c6f672d747261636b65722e737667)](https://camo.githubusercontent.com/81bd1e25752b4030c9dc5af32da784663f5e7495a4b888dc265e47e7e2355c4e/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6b73736164692f6c6f672d747261636b65722e737667)[![GitHub top language](https://camo.githubusercontent.com/d5be8528044a557b68b0f8253419a42fd6f1f5f2efa0c568285fe427977369d3/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c616e6775616765732f746f702f4b73536164692f4c61726176656c2d4c6f672d547261636b65722e737667)](https://camo.githubusercontent.com/d5be8528044a557b68b0f8253419a42fd6f1f5f2efa0c568285fe427977369d3/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c616e6775616765732f746f702f4b73536164692f4c61726176656c2d4c6f672d547261636b65722e737667)[![Codecov](https://camo.githubusercontent.com/f892d3301d2f31ceb3d90495471cc01a3e7169f6e9427ecc68258968a3559285/68747470733a2f2f636f6465636f762e696f2f67682f4b73536164692f4c61726176656c2d4c6f672d547261636b65722f6272616e63682f6d61696e2f67726170682f62616467652e737667)](https://codecov.io/gh/KsSadi/Laravel-Log-Tracker)

### 🌐 [Official Website &amp; Documentation](https://kssadi.github.io/Laravel-Log-Tracker/)

[](#-official-website--documentation)

---

Table of Contents
-----------------

[](#table-of-contents)

- [Requirements](#%EF%B8%8F-requirements)
- [Installation](#-installation)
- [Configuration](#%EF%B8%8F-configuration)
- [Features](#-features)
    - [Dashboard](#-dashboard)
    - [Log File Management](#-log-file-management)
    - [Log Viewer](#-log-viewer)
    - [Global Search](#-global-search)
    - [Log Comparison](#%EF%B8%8F-log-comparison)
    - [Export](#-export)
    - [Alerts &amp; Notifications](#-alerts--notifications)
    - [Themes](#-themes)
    - [Artisan Commands](#%EF%B8%8F-artisan-commands)
- [Routes Reference](#%EF%B8%8F-routes-reference)
- [Testing](#-testing)
- [Screenshots](#-screenshots)
- [Changelog](#-changelog)
- [Support](#-support)
- [Author](#-author)
- [License](#-license)

---

🖥️ Requirements
---------------

[](#️-requirements)

LaravelPHP13.x8.3 – 8.512.x8.1 – 8.411.x8.1 – 8.310.x8.1 – 8.2---

📦 Installation
--------------

[](#-installation)

**1. Install via Composer:**

```
composer require kssadi/log-tracker
```

**2. Publish the configuration file:**

```
php artisan vendor:publish --provider="Kssadi\LogTracker\LogTrackerServiceProvider" --tag="config"
```

**3. (Optional) Publish views to customise them:**

```
php artisan vendor:publish --provider="Kssadi\LogTracker\LogTrackerServiceProvider" --tag="views"
```

---

⚙️ Configuration
----------------

[](#️-configuration)

After publishing, edit `config/log-tracker.php`:

```
return [
    // Base URL: https://your-domain.com/log-tracker
    'route_prefix' => 'log-tracker',

    // Middleware applied to all routes
    'middleware' => ['web', 'auth'],

    // UI theme: 'GlowStack' (dark, modern) | 'LiteFlow' (light, minimal)
    'theme' => 'GlowStack',

    // Entries shown per page in the log viewer
    'log_per_page' => 50,

    // Log files shown per page on the file listing
    'log_files_per_page' => 10,

    // Dashboard stats cache TTL in seconds (0 = disabled)
    'dashboard_cache_ttl' => 60,

    // Maximum log file size (MB) that can be processed
    'max_file_size' => 50,

    // Allow log file deletion via the UI
    'allow_delete' => false,

    // Allow log file download
    'allow_download' => true,

    // Log level display configuration (color + icon)
    'log_levels' => [
        'emergency' => ['color' => '#b91c1c', 'icon' => 'fas fa-exclamation-circle'],
        'critical'  => ['color' => '#b91c1c', 'icon' => 'fas fa-exclamation-triangle'],
        'alert'     => ['color' => '#b91c1c', 'icon' => 'fas fa-exclamation-circle'],
        'error'     => ['color' => '#dc2626', 'icon' => 'fas fa-times-circle'],
        'warning'   => ['color' => '#d97706', 'icon' => 'fas fa-exclamation-triangle'],
        'notice'    => ['color' => '#b59c1c', 'icon' => 'fas fa-info-circle'],
        'info'      => ['color' => '#0284c7', 'icon' => 'fas fa-info-circle'],
        'debug'     => ['color' => '#059669', 'icon' => 'fas fa-bug'],
    ],

    // Export settings (no external dependencies required)
    'export' => [
        'enabled' => true,
        'formats' => [
            'csv'   => ['enabled' => true],
            'json'  => ['enabled' => true],
            'excel' => ['enabled' => true],
            'pdf'   => ['enabled' => true],
        ],
        'limits' => [
            'max_entries'      => 50000,
            'max_file_size_mb' => 50,
            'timeout_seconds'  => 300,
        ],
        'storage' => [
            'cleanup_after_days' => 7,
        ],
    ],

    // Alert / notification settings
    'alerts' => [
        'enabled'          => false,
        'window_minutes'   => 60,
        'cooldown_minutes' => 15,

        'thresholds' => [
            'emergency' => 1,
            'critical'  => 1,
            'alert'     => 1,
            'error'     => 50,
            'warning'   => 100,
        ],

        'channels' => [
            'mail'    => ['enabled' => false, 'to' => env('LOG_TRACKER_ALERT_MAIL', 'admin@example.com')],
            'slack'   => ['enabled' => false, 'webhook_url' => env('LOG_TRACKER_SLACK_WEBHOOK', '')],
            'discord' => ['enabled' => false, 'webhook_url' => env('LOG_TRACKER_DISCORD_WEBHOOK', '')],
            'webhook' => [
                'enabled' => false,
                'url'     => env('LOG_TRACKER_WEBHOOK_URL', ''),
                'method'  => 'POST',
                'headers' => [],
            ],
        ],
    ],
];
```

### Recommended `.env` settings

[](#recommended-env-settings)

```
LOG_CHANNEL=daily
LOG_LEVEL=debug

# Alert channels (when alerts.enabled = true)
LOG_TRACKER_ALERT_MAIL=admin@example.com
LOG_TRACKER_SLACK_WEBHOOK=https://hooks.slack.com/...
LOG_TRACKER_DISCORD_WEBHOOK=https://discord.com/api/webhooks/...
LOG_TRACKER_WEBHOOK_URL=https://your-endpoint.com/hook
```

### Recommended log channel config (`config/logging.php`)

[](#recommended-log-channel-config-configloggingphp)

```
'channels' => [
    'daily' => [
        'driver' => 'daily',
        'path'   => storage_path('logs/laravel.log'),
        'level'  => env('LOG_LEVEL', 'debug'),
        'days'   => 14,
    ],
],
```

---

🚀 Features
----------

[](#-features)

### 📊 Dashboard

[](#-dashboard)

**URL:** `/log-tracker`

The main dashboard aggregates data from all log files into a single at-a-glance view:

- **Summary counters** — total entries and per-level breakdown
- **Today's activity** — entries logged today, broken down by level
- **7-day trend** — date-keyed table of the past week's activity
- **Last 5 recent logs** — most recent log entries across all files
- **Top error types** — most frequent error message prefixes
- **Peak hours** — hour-of-day histogram showing when errors peak
- **Live auto-refresh** — JSON endpoint (`/api/dashboard-refresh`) polled by the UI without a full page reload

---

### 📁 Log File Management

[](#-log-file-management)

**URL:** `/log-tracker/log-file`

- Paginated file listing with human-readable names (`laravel-2025-06-01.log` → `01 June 2025`)
- File size displayed beside each entry
- Per-file level breakdown counts (how many errors, warnings, etc.)
- Actions per file: **View**, **Download**, **Delete** (if `allow_delete = true`)

---

### 📋 Log Viewer

[](#-log-viewer)

**URL:** `/log-tracker/{filename}`

A full-featured viewer for a single log file:

FeatureDetail**Level filter**Toggle individual log levels on/off**Real-time search**Instant keyword filter across message and timestamp**Pagination**Configurable entries per page**Stack trace viewer**Expand/collapse per entry with syntax highlighting — frame numbers gold, file paths teal, line numbers red**Copy to Clipboard**One-click copy for any log message and for full stack traces; icon changes to ✓ for 2 s visual feedback**Row Bookmark**Bookmark any row with 🔖; row highlighted in gold, bookmarks stored in `localStorage` and survive page reloads**Show Marked Only**Toggle button in the header (shows count) to display only bookmarked rows**Frequent Entries panel**Collapsible table of the top 15 repeated messages with occurrence count, first seen, and last seen timestamps**Clear log**Wipe file contents without deleting the file (requires `allow_delete = true`)**Quick export**Export current file in any supported format directly from the viewer---

### 🔎 Global Search

[](#-global-search)

**URL:** `/log-tracker/search`

Search across **all** log files simultaneously without opening each one:

- **Keyword search** — case-insensitive, matches message body and stack trace content
- **Level filter** — narrow results to a specific log level
- **Date range** — `date_from` and `date_to` filters
- **File filter** — restrict the search to a specific log file
- **Paginated results** — newest-first ordering, source filename shown per result
- Results decorated with per-level colour coding and icons

---

### ⚖️ Log Comparison

[](#️-log-comparison)

**URL:** `/log-tracker/compare`

Select any two log files for a full side-by-side content diff:

TabDescription**Only in File A**Entries that exist only in the first file**Only in File B**Entries that exist only in the second file**Shared**Entries present in both files (matched by level + message fingerprint)Additional information displayed:

- Per-level count breakdown table for each file
- Total entry counts for both files
- Guard against selecting the same file twice (null comparison shown)

---

### 📤 Export

[](#-export)

**URL:** `/log-tracker/export`
**Quick export:** `/log-tracker/export/{filename}/{format}`

Export filtered log data — **no external package dependencies required**:

FormatExtensionNotesCSV`.csv`UTF-8 BOM — opens correctly in ExcelJSON`.json`Includes `export_info` metadata (generated\_at, filters, exported\_by)Excel`.xls`Native Office Open XML format — no PHPSpreadsheet neededPDF`.pdf`Print-ready HTML report (capped at first 1 000 entries)**Available filters:** specific files, log levels, date range, keyword.

Export files are stored temporarily and automatically deleted after `cleanup_after_days` days.

---

### 🔔 Alerts &amp; Notifications

[](#-alerts--notifications)

The alert system monitors log files on a rolling time window and triggers notifications when entry counts for any level exceed configured thresholds.

```
'alerts' => [
    'enabled'          => true,
    'window_minutes'   => 60,     // rolling look-back window
    'cooldown_minutes' => 15,     // minimum gap before re-alerting for same file + level

    'thresholds' => [
        'emergency' => 1,
        'critical'  => 1,
        'error'     => 50,
        'warning'   => 100,
    ],

    'channels' => [
        'mail'    => ['enabled' => true,  'to' => 'admin@example.com'],
        'slack'   => ['enabled' => true,  'webhook_url' => env('LOG_TRACKER_SLACK_WEBHOOK')],
        'discord' => ['enabled' => false, 'webhook_url' => env('LOG_TRACKER_DISCORD_WEBHOOK')],
        'webhook' => [
            'enabled' => false,
            'url'     => env('LOG_TRACKER_WEBHOOK_URL'),
            'method'  => 'POST',
            'headers' => ['Authorization' => 'Bearer token'],
        ],
    ],
],
```

**Run manually:**

```
php artisan log-tracker:check-alerts
```

**Auto-schedule** — when `alerts.enabled = true` the package registers a once-per-minute scheduler entry automatically. Ensure your scheduler cron is active:

```
* * * * * cd /path/to/project && php artisan schedule:run >> /dev/null 2>&1
```

#### Notification Channels

[](#notification-channels)

ChannelHow to enable**Mail**Set `enabled = true`, set `to` to recipient email; uses the application's default mailer**Slack**Create an [Incoming Webhook](https://api.slack.com/apps) in your Slack app and paste the URL**Discord**Server Settings → Integrations → Webhooks → copy URL**Webhook**Any HTTP endpoint — POST or GET, custom headers supported---

### 🎨 Themes

[](#-themes)

Two production-ready themes are bundled. Switching theme requires no cache clear.

ThemeStyleBest for**GlowStack**Dark, colorful, gradient-basedModern dashboards, low-light environments**LiteFlow**Light, minimal, cleanHigh-contrast readability, print-friendly[![Log Tracker Theme](/image/log_tracker_log_theme.png)](/image/log_tracker_log_theme.png)

**Set theme in config:**

```
'theme' => 'GlowStack', // or 'LiteFlow'
```

**Custom themes** — add a new folder under `resources/views/vendor/log-tracker/theme/YourTheme/` containing `dashboard.blade.php`, `logs.blade.php`, `log-details.blade.php`, `search.blade.php`, `compare.blade.php`, and `export.blade.php`. The package discovers it automatically.

---

### 🛠️ Artisan Commands

[](#️-artisan-commands)

CommandDescription`log-tracker:check-alerts`Check all log files against thresholds and send configured notifications`log-tracker:cleanup [--days=7]`Delete temporary export files older than N days`log-tracker:theme list`List all available themes`log-tracker:theme current`Show the currently active theme`log-tracker:theme set {name}`Switch to the specified theme---

🗺️ Routes Reference
-------------------

[](#️-routes-reference)

All routes are grouped under the configured `route_prefix` (default: `log-tracker`) with the configured middleware.

MethodURIRoute nameDescriptionGET`/log-tracker``log-tracker.dashboard`Main dashboardGET`/log-tracker/api/dashboard-refresh``log-tracker.api.dashboard.refresh`Live dashboard JSON refreshGET`/log-tracker/log-file``log-tracker.index`Log file listingGET`/log-tracker/search``log-tracker.search`Global multi-file searchGET`/log-tracker/compare``log-tracker.compare`Side-by-side file comparisonGET`/log-tracker/export``log-tracker.export.form`Export formPOST`/log-tracker/export``log-tracker.export`Trigger export downloadGET`/log-tracker/export/{logName}/{format}``log-tracker.export.quick`Quick export from viewerGET`/log-tracker/download/{logName}``log-tracker.download`Download raw log filePOST`/log-tracker/delete/{logName}``log-tracker.delete`Delete log filePOST`/log-tracker/clear/{logName}``log-tracker.clear`Clear log file contentsGET`/log-tracker/{logName}``log-tracker.show`View log entries---

🧪 Testing
---------

[](#-testing)

The package ships with a comprehensive PHPUnit test suite covering controllers, services, and Artisan commands. Tests run standalone via [`orchestra/testbench`](https://github.com/orchestral/testbench) — no parent Laravel project required.

**Clone the repository and install dev dependencies:**

```
git clone https://github.com/KsSadi/Laravel-Log-Tracker.git
cd Laravel-Log-Tracker
composer install
```

**Run all tests:**

```
./vendor/bin/phpunit
```

**Run by suite:**

```
./vendor/bin/phpunit --testsuite Feature
./vendor/bin/phpunit --testsuite Unit
```

**Run a single test file:**

```
./vendor/bin/phpunit tests/Feature/CompareControllerTest.php
```

### Coverage Summary

[](#coverage-summary)

SuiteTest FileWhat it coversFeature`LogFileControllerTest`Index, show, download, delete, clear, pagination, path traversal guardFeature`DashboardControllerTest`Stats structure, 7-day dates, live refresh JSON endpoint, cache TTL behaviourFeature`SearchControllerTest`Keyword, level, date range, cross-file search, paginationFeature`CompareControllerTest`Shared/unique detection, level counts, same-file guardFeature`ExportControllerTest`CSV, JSON, Excel, PDF output format + validationFeature`LogFrequencyTest`Duplicate message detection, count sorting, first/last seenFeature`CheckLogAlertsCommandTest`Threshold breach detection, cooldown, notification dispatchFeature`CleanupCommandTest`Old export file removal by ageFeature`ThemeCommandTest`List, current, set theme commandsFeature`ServiceProviderTest`Container binding, facade, config publishingUnit`LogParserServiceTest`Log parsing, pagination, stack trace line detection, correct stack trace entry assignmentUnit`LogExportServiceTest`CSV/JSON/Excel/PDF generation with filter combinationsUnit`ThemeManagerTest`Theme discovery, fallback behaviour, view path resolution**Current baseline: 177 tests, 461 assertions — all passing.**

---

📸 Screenshots
-------------

[](#-screenshots)

[![Dashboard](/image/log_tracker_dashboard.png)](/image/log_tracker_dashboard.png)

[![Log File List](/image/log_tracker_log_file.png)](/image/log_tracker_log_file.png)

[![Log Viewer](/image/log_tracker_log_file_view.png)](/image/log_tracker_log_file_view.png)

[![Theme Comparison](/image/log_tracker_log_theme.png)](/image/log_tracker_log_theme.png)

---

📝 Changelog
-----------

[](#-changelog)

See [CHANGELOG.md](CHANGELOG.md) for a full release history and upgrade notes.

---

🆘 Support
---------

[](#-support)

ChannelLink🐛 Bug reports[GitHub Issues](https://github.com/KsSadi/Laravel-Log-Tracker/issues)💬 Feature requests[GitHub Discussions](https://github.com/KsSadi/Laravel-Log-Tracker/discussions)📖 Documentation[Official Site](https://kssadi.github.io/Laravel-Log-Tracker/)💌 Email☕ Buy me a coffee[![Buy Me a Coffee](https://camo.githubusercontent.com/8bcbdd51f59d9b304bf811ddad2b6c9fddd3cbf6035c63d9b460f7e3894cce66/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f2d4275792532304d6525323061253230436f666665652d6f72616e67653f7374796c653d666f722d7468652d6261646765266c6f676f3d6275792d6d652d612d636f66666565266c6f676f436f6c6f723d7768697465)](https://www.buymeacoffee.com/kssadi)---

👤 Author
--------

[](#-author)

**Khaled Saifullah Sadi**
*Full Stack Developer · Laravel Enthusiast*

[![Email](https://camo.githubusercontent.com/ce37bbbfb157ef7a797fe18a232c1cbb1b58e5591c5c3552ed9305e972864e3f/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f456d61696c2d6d647361646934253430676d61696c2e636f6d2d7265643f7374796c653d666f722d7468652d6261646765266c6f676f3d676d61696c266c6f676f436f6c6f723d7768697465)](mailto:mdsadi4@gmail.com)[![LinkedIn](https://camo.githubusercontent.com/d17801d1c2920e1ebf233634d65c2ffc5bd7652cf56080fb7aa27725db077bcf/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c696e6b6564496e2d6b73736164692d626c75653f7374796c653d666f722d7468652d6261646765266c6f676f3d6c696e6b6564696e266c6f676f436f6c6f723d7768697465)](https://www.linkedin.com/in/kssadi/)[![GitHub](https://camo.githubusercontent.com/4f7129d68b66b4e30fb68283000e55aeacde2038c3a43b466799864edc84995f/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4769744875622d4b73536164692d626c61636b3f7374796c653d666f722d7468652d6261646765266c6f676f3d676974687562266c6f676f436f6c6f723d7768697465)](https://github.com/KsSadi)

---

❤️ Supported by Business Automation Ltd
---------------------------------------

[](#️-supported-by-business-automation-ltd)

Maintained by [Sadi](https://github.com/KsSadi) and supported by
**[Business Automation Ltd](https://ba-systems.com)** — building enterprise-grade e-governance and automation solutions across Bangladesh.

[ ![Business Automation Ltd](https://camo.githubusercontent.com/868746aa2ba9bcd7259f30e369899df15167c943d71692ad131bd13cc6aeb3fb/68747470733a2f2f62612d73797374656d732e636f6d2f706e672f42412e706e67)](https://ba-systems.com)

---

📄 License
---------

[](#-license)

Released under the [MIT License](https://opensource.org/licenses/MIT).

```
MIT License

Copyright (c) 2025 Khaled Saifullah Sadi

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

```

---

**⭐ If Laravel Log Tracker saves you time, please give it a star on GitHub! ⭐**

*Made with ❤️ for the Laravel Community*

*Copyright © 2025 [Khaled Saifullah Sadi](https://github.com/KsSadi). All rights reserved.*

###  Health Score

49

—

FairBetter than 95% of packages

Maintenance88

Actively maintained with recent releases

Popularity33

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity52

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~46 days

Recently: every ~69 days

Total

9

Last Release

59d ago

Major Versions

1.4 → 2.02025-06-17

2.3 → v3.02026-03-21

PHP version history (3 changes)1.0.0PHP &gt;=7.0 &lt;=8.4.4

1.2.0PHP &gt;=5.6

v3.0PHP ^8.1

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/40826351?v=4)[Khaled Saifullah Sadi](/maintainers/KsSadi)[@KsSadi](https://github.com/KsSadi)

---

Top Contributors

[![KsSadi](https://avatars.githubusercontent.com/u/40826351?v=4)](https://github.com/KsSadi "KsSadi (9 commits)")

---

Tags

laravelmonitoringdebugginglogslog viewerlaravel-log-viewerlog trackerKs SadiLog Tracker By SadiLaravel Log Tracker

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/kssadi-log-tracker/health.svg)

```
[![Health](https://phpackages.com/badges/kssadi-log-tracker/health.svg)](https://phpackages.com/packages/kssadi-log-tracker)
```

###  Alternatives

[jackiedo/log-reader

An easy log reader and management tool for Laravel

151376.5k4](/packages/jackiedo-log-reader)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
