azeemade / db-logs
A Laravel package to log request and response information in a database.
Installs: 2
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/azeemade/db-logs
Requires
- php: ^8.1
- illuminate/database: ^10.0|^11.0|^12.0
- illuminate/http: ^10.0|^11.0|^12.0
- illuminate/support: ^10.0|^11.0|^12.0
Requires (Dev)
- orchestra/testbench: ^8.0|^9.0
- pestphp/pest: ^2.0
- pestphp/pest-plugin-laravel: ^2.0
This package is auto-updated.
Last update: 2026-02-17 17:51:24 UTC
README
A powerful, secure, and flexible logging package for Laravel that captures both inbound (user requests) and outbound (HTTP client) traffic. Designed for applications that need rigorous audit trails, debugging of third-party integrations, and request/response monitoring.
Key Features
- Inbound Traffic Logging: Automatically log incoming user requests, including headers, bodies, IP, User ID, and Session ID.
- Outbound Traffic Logging: Capture all HTTP Client requests (
Http::get,Http::post, etc.) automatically. - Trigger Context: For outbound requests, see exactly what user input (payload) triggered the API call.
- Smart Error Capture: Automatically prioritizes error logs. Captures full stack traces and error messages for exceptions.
- Security First:
- Configurable encryption for sensitive fields (e.g., password, ssn, pin).
- Secure Dashboard with on-demand decryption.
- API Endpoint protected by a mutable passkey.
- Dashboard: A clean, responsive UI (similar to Horizon) to browse, filter, and inspect logs.
- Configurable Pruning: Automatically clean up old logs to keep your database healthy.
Basic Examples
1. Inbound Logging
Just install the package, and it starts working. By default, it logs errors only (status >= 400) to keep noise low, but you can configure it to log everything.
2. Outbound Logging
When you make a request using Laravel's HTTP Client:
Http::post('https://third-party-api.com/v1/charge', [ 'amount' => 100, 'card_number' => '4242424242424242' // This will be encrypted in logs! ]);
The package logs the request URL, headers, body, response status, and body.
3. API Access
Retrieve logs programmatically using the secure API endpoint:
curl -X POST https://your-app.com/db-logs/api/logs \
-d "limit=10" \
-d "passkey=YOUR_SECURE_KEY"
Documentation
For full installation and configuration instructions, please read SETUP.md.