Download the PHP package rcommerz/logger-laravel without Composer
On this page you can find all versions of the php package rcommerz/logger-laravel. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download rcommerz/logger-laravel
More information about rcommerz/logger-laravel
Files in rcommerz/logger-laravel
Package logger-laravel
Short Description Production-ready structured logging for Laravel microservices with OpenTelemetry support
License MIT
Informations about the package logger-laravel
RCOMMERZ Logger for Laravel
[]()
[
]()
[
]()
[
]()
Production-ready structured JSON logging for Laravel microservices with OpenTelemetry support. Built on top of Monolog with ECS (Elastic Common Schema) compatible output.
Features
- ✅ Structured JSON Logging - ECS-compatible format for seamless integration with Elasticsearch, Datadog, and other log aggregators
- ✅ OpenTelemetry Integration - Automatic trace context injection (trace_id, span_id, trace_flags)
- ✅ HTTP Request/Response Logging - Middleware for automatic API logging with configurable filtering
- ✅ Security Built-in - Automatic sensitive header redaction (Authorization, Cookie, API keys)
- ✅ Laravel Auto-Discovery - Zero configuration needed, works out of the box
- ✅ Monolog Based - Extends Monolog with custom formatter and processor for maximum flexibility
- ✅ Type-Safe - Fully typed with PHP 8.1+ features
- ✅ 100% Test Coverage - 31 tests, 62 assertions, production-ready
Requirements
- PHP 8.2 or higher (PHP 8.3+ required for Laravel 13)
- Laravel 10.x, 11.x, 12.x, or 13.x
- Monolog 3.5+
Installation
Install via Composer:
The service provider will be automatically registered thanks to Laravel's package auto-discovery.
Publish Configuration (Optional)
This creates config/rcommerz_logger.php where you can customize settings.
Quick Start
Basic Usage
Using Facade
HTTP Middleware
Add to your middleware stack to automatically log all HTTP requests/responses:
Or apply to specific routes:
Configuration
Environment Variables
Configure via .env:
Configuration File
After publishing, edit config/rcommerz_logger.php:
Available Log Levels
Log Output Format
All logs are output as single-line JSON to stdout in ECS-compatible format:
HTTP Request Log Example
OpenTelemetry Integration
The logger automatically detects and includes OpenTelemetry trace context when available. Install OpenTelemetry SDK:
Configure OpenTelemetry instrumentation, and trace context will be automatically injected into all logs.
Advanced Usage
Access Underlying Monolog Instance
Exception Logging
Exceptions are automatically formatted with detailed information:
Context Preservation
Add persistent context to all subsequent log calls:
Testing
The package includes comprehensive tests:
Security
Automatic Sensitive Header Redaction
The HTTP middleware automatically redacts these headers:
AuthorizationCookieX-API-KeyX-Auth-Token
Custom Sensitive Data Filtering
Extend the middleware to add custom filtering:
Comparison with Laravel's Default Logging
| Feature | RCOMMERZ Logger | Laravel Default |
|---|---|---|
| Structured JSON | ✅ ECS-compatible | ❌ Plain text/JSON mix |
| OpenTelemetry | ✅ Automatic | ❌ Manual setup |
| HTTP Logging | ✅ Middleware included | ❌ Manual |
| Sensitive Data Redaction | ✅ Automatic | ❌ Manual |
| Microservices Ready | ✅ Built-in | ⚠️ Requires config |
| Single-line JSON | ✅ Always | ❌ Multi-line |
Contributing
Contributions are welcome! Please see CONTRIBUTING.md for details.
Changelog
See CHANGELOG.md for all changes.
License
This package is open-source software licensed under the MIT license.
Credits
- Built with Monolog
- OpenTelemetry integration via open-telemetry/api
- Inspired by Elastic Common Schema
Support
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Email: [email protected]
All versions of logger-laravel with dependencies
illuminate/support Version ^9.0|^10.0|^11.0|^12.0|^13.0
illuminate/http Version ^9.0|^10.0|^11.0|^12.0|^13.0
monolog/monolog Version ^3.5
open-telemetry/api Version ^1.0