Download the PHP package hewerthomn/laravel-error-tracker without Composer

On this page you can find all versions of the php package hewerthomn/laravel-error-tracker. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package laravel-error-tracker

Laravel Error Tracker

Latest Version on Packagist Total Downloads CI License Code Style

A Laravel-first error tracking package with a built-in dashboard, local persistence, issue grouping, notifications, smart stack traces, diagnostics, and optional end-user feedback.

Documentation

Full documentation is available at:

https://hewerthomn.com/laravel-error-tracker/

The README contains the quick start. The documentation site contains the full guide.

Features

Capture and storage

Dashboard and search

Issue workflow

Notifications

GitHub Issue Integration

GitHub issue links are optional and disabled by default. Configure a token with Issues read/write access and a default repository:

When enabled, the issue detail page can create a GitHub issue or link an existing one, then refresh status from GitHub or unlink the local association. See the full GitHub Issue Integration guide.

Feedback and error page

Diagnostics and maintenance

Screenshots

Issues dashboard

Issue detail

Smart stack trace

Configuration diagnostics

Requirements

Installation

Default install

Install the package in your Laravel application, publish configuration and migrations, run migrations, and verify the setup:

The default installer is non-destructive. It publishes the package config and migrations, optionally asks to run migrations in interactive terminals, and prints the next recommended commands.

To generate demo data at the end of installation:

Guided install

The guided installer can suggest the main .env values for feedback, custom error pages, auto resolve, notifications, notification cooldown, smart stack trace, and database connection.

It does not edit config/error-tracker.php directly. To write missing .env values idempotently, pass --write-env.

Presets

Available presets:

Updating the package

New Error Tracker features can add database migrations. After updating the package, publish any new migrations, run them, clear optimized config, and run diagnostics:

Examples of features that add schema are Auto Resolve metadata and Notification Cooldown history.

Basic Setup

Define the dashboard gate

In your host application, define the viewErrorTracker gate:

Replace the example above with your real authorization logic.

Minimal exception capture

Register exception capture in bootstrap/app.php:

See Custom Error Page and User Feedback for a fuller bootstrap/app.php example that records the exception and renders the optional production error page with feedback.

Dashboard

By default, the dashboard is available at:

The page title uses:

The dashboard also supports a configurable shortcut back to the host application.

Dashboard quick filters

The issues dashboard includes a left sidebar with quick filters for status, level, period, and environment.

The main issue list includes search for errors, paths, or messages, plus sorting by recent, frequent, or oldest issues. Filter links preserve the current query string, and status and level filters show counts for the current dashboard slice.

Diagnostics page

The read-only diagnostics page is available at:

If you customize error-tracker.route.path, the page follows that path, for example /{custom-path}/configuration.

The page shows the effective Error Tracker configuration for capture, feedback, auto resolve, notifications, stack trace, retention, redaction, and database health checks. It also shows command and scheduler hints for maintenance tasks.

Secrets are never displayed raw. Notification recipients, Slack webhook values, tokens, secrets, passwords, authorization headers, cookies, and API keys are rendered as configured or not configured.

Configuration

Main configuration file:

Important options include:

Advanced search

The dashboard index uses GET query parameters, so filtered views can be shared or bookmarked:

The search box accepts free text plus operators.

Free text searches issue title, exception class, message sample, fingerprint, status, level, environment, and resolution metadata. Event and feedback tables are only queried when an operator requires them.

Supported operators:

Values with spaces can be quoted:

The visual filters cover status, level, environment, period, resolution type, feedback presence, sort, and direction.

Active filters are shown as chips, and the Clear filters action returns to /error-tracker without query parameters. Inputs are validated against allowed values and applied through Eloquent query builder methods rather than raw SQL.

Smart Stack Trace

The event detail page highlights frames that belong to your project and groups consecutive framework, vendor, internal, or unknown frames into collapsed non-project blocks.

This keeps the most useful application code visible while still allowing framework/vendor details to be expanded when needed.

By default, project frames are detected from common Laravel paths and namespaces:

Function arguments are not stored or displayed by default for security.

Old traces that contain args or arguments are ignored by the presenter. Source context is only read from configured stacktrace.project_paths, never from vendor by default, and source lines containing tokens, passwords, secrets, authorization values, cookies, or x-api-key are masked before display.

Path normalization and source context

Error Tracker normalizes stack trace paths by default before storing or displaying them.

Absolute paths such as /workspace/app/routes/web.php are stored as routes/web.php, which avoids leaking server directory structure in the database or dashboard.

stacktrace.path_display accepts relative, basename, and absolute. The default is relative.

If path_display is set to absolute but stacktrace.store_absolute_paths is false, Error Tracker falls back to relative paths for safety.

Source context is enabled by default and stores a small snippet around eligible project stack frames.

When an exception is thrown inside Laravel or another dependency, Error Tracker marks the first project frame closest to the top of the stack as the application frame and uses that frame for the event location and primary source context. The original throwing frame is still kept in the stack trace and labeled separately when it comes from the framework.

Source context is limited to configured project paths, skips excluded paths such as vendor, storage, and bootstrap/cache, enforces a maximum file size, and does not read .env.

Missing or unreadable files simply return no context, so the dashboard keeps rendering. The dashboard escapes source lines when rendering them.

Available source context settings:

Auto Resolve

Auto Resolve can close stale open issues when they have not received new events for a configured number of days.

The feature is disabled by default.

Default configuration:

Example scheduler registration:

Preview eligible issues without changing the database:

Shared Database / Multi-App Setup

The package can optionally use a dedicated database connection:

When this is configured, multiple applications may write to the same tracker storage.

In that setup, keeping environment visible in the dashboard and optionally including it in the fingerprint becomes more useful.

Notifications

Supported in the current MVP:

Mail notifications can be configured with:

Slack delivery is optional and depends on Laravel's Slack notification channel setup in the host application.

Notification Cooldown

Notification cooldown prevents a noisy issue from sending too many mail or Slack alerts in a short period.

The limiter is applied per issue and covers notifications for:

Default settings:

ERROR_TRACKER_NOTIFICATION_COOLDOWN_MINUTES defines the minimum time between notifications for the same issue.

ERROR_TRACKER_NOTIFICATION_MAX_PER_ISSUE_PER_HOUR caps how many notifications a single issue can send in a rolling one-hour window.

Set either value to 0 or leave it null to disable that specific limit:

The issue detail page shows recent notification metadata, and the configuration page shows the effective cooldown and hourly limit values.

Custom Error Page and User Feedback

When enabled, the package can render a custom HTML error page only when:

The optional feedback form is linked to the recorded event through feedback_token, so the feedback is associated with the issue occurrence that triggered the page.

The MVP feedback UI is Blade with lightweight Tailwind and Alpine.js usage, without Livewire.

Guest users can fill in name and email fields when guest feedback is allowed and those fields are enabled.

Authenticated users see name and email prefilled from their signed-in account as readonly fields. This is only a usability hint: the backend always uses request()->user() as the source of truth when available and ignores submitted name/email values for signed-in users.

Optional custom error page with feedback

Register exception capture and the optional error page rendering in bootstrap/app.php:

Demo data

Generate safe demo records for local testing and screenshots:

Purge only demo data:

Demo data safety:

Available Commands

Command Description
php artisan error-tracker:install Publish config and migrations
php artisan error-tracker:install --guided Run guided setup
php artisan error-tracker:demo --fresh --with-feedback --with-notifications --with-resolved Generate demo data
php artisan error-tracker:demo --purge Remove demo data only
php artisan error-tracker:doctor Run diagnostics
php artisan error-tracker:doctor --json --fail-on-missing JSON diagnostics for CI
php artisan error-tracker:prune Prune old data
php artisan error-tracker:auto-resolve Auto resolve stale issues

Production checklist

Development

Run the test suite:

Check formatting:

Run static analysis:

Code Style

Laravel Pint is the recommended formatter for this package.

Run Pint:

Check formatting without modifying files:

Local Sandbox

The package can be developed with a local Laravel sandbox application using a Composer path repository so the sandbox consumes the package directly from disk.

Roadmap

Planned improvements after the MVP:

Changelog

Please see CHANGELOG.md for more information about notable changes.

Contributing

Please see CONTRIBUTING.md for development setup and pull request guidelines.

Security Vulnerabilities

Please review SECURITY.md for supported versions, vulnerability reporting, and sensitive data guidance.

License

MIT


All versions of laravel-error-tracker with dependencies

PHP Build Version
Package Version
Requires php Version ^8.3
illuminate/contracts Version ^11.0|^12.0|^13.0
illuminate/support Version ^11.0|^12.0|^13.0
spatie/laravel-package-tools Version ^1.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package hewerthomn/laravel-error-tracker contains the following files

Loading the files please wait ...