nowo-tech/http-log-bundle
A Symfony bundle for logging outgoing HTTP requests and responses, capturing URLs, headers, payloads, status codes and timings so you can debug third-party integrations and inspect traffic through a centralized, configurable log.
Architecture fit — this is a framework mismatch, and it is the headline finding. nowo-tech/http-log-bundle is a Symfony bundle, not a Laravel package. Its distribution and integration surface is Symfony-shaped throughout: a DependencyInjection extension with a semantic config tree, compiler passes, kernel event subscribers (kernel.request, kernel.response, kernel.exception), Twig templates for the admin UI, and Symfony console commands for purge/export. Laravel's package discovery, service providers, middleware pipeline, Eloquent, Blade/Inertia, and Gate/Policy abstractions do not map onto any of that. Nothing about the bundle will "just work" in a Laravel app.
The one genuine point of contact: Laravel's Illuminate\Http\Request/Response extend Symfony's HttpFoundation types, and Laravel ships Symfony components. So the data plane — body capture, configurable body policies, redaction, persistence, export, purge — is plausibly reusable if those services are written against plain PHP/PSR types rather than the Symfony container and HttpKernel events. The control plane (wiring, config validation, admin rendering) is not reusable at all. The effective reuse ratio is unknown without source review and is the single most important diligence item.
Integration feasibility — three viable paths.
ServiceProvider, implement a global middleware that hydrates the bundle's log-entry types from Laravel's request/response, reuse redaction/policy/export/purge where decoupled, reimplement only the admin surface. Estimate 1–2 weeks, contingent entirely on coupling.Recommendation: run B as a 3–5 day spike with a hard go/no-go gate on decoupling, and treat C as the credible default if the gate fails.
Technical risk.
Key questions to resolve before committing.
Stack fit. The gaps are structural, not cosmetic: middleware pipeline vs kernel events, ServiceProvider vs DI extension, Eloquent vs whatever persistence the bundle assumes, Blade/Inertia vs Twig, Laravel Gate vs Symfony security. The HTTP message objects are the only aligned layer.
Migration path (if the spike passes).
internal/http-log) under MIT, keeping upstream as a git remote for cherry-picks. Do not vendor-and-forget.HttpLogServiceProvider with a publishable config/http-log.php that mirrors the bundle's semantic config keys as closely as practical.LogHttpTraffic middleware, ordered after authentication so user identity is populated, and wrapped in a fail-open guard.Compatibility. Pin to a tagged release, not dev-main. Record PHP/Symfony/DB floors explicitly and add a CI matrix against the Laravel major versions we actually support. PHP 8.2+/Symfony 7–8 is compatible with modern Laravel; the risk is transitive, not foundational.
Sequencing — each phase has a gate.
Do not put this on the critical path of a compliance deadline until redaction rules have security sign-off.
Maintenance. This is an owned fork from day one, not a dependency. Budget ~0.1–0.2 FTE ongoing for upstream tracking, dependency bumps, and Laravel major-version upgrades. Upstream divergence cost rises sharply if the maintainer reshapes the config schema.
Support. At 2 stars and 0 dependents there is no community to escalate to and no third-party knowledge base. Internal runbooks, a named on-call owner, and a written redaction rulebook are prerequisites, not nice-to-haves.
Scaling.
timestamp/user/route for the admin UI, and stream exports rather than materializing large ranges in memory.Failure modes and mitigations.
Ramp-up. A Laravel team can own the middleware and admin surface without difficulty. The unfamiliar part is the bundle's Symfony-style configuration tree and event wiring — roughly 2–3 days for a senior engineer. Documentation for the internal fork is our responsibility and should ship with Phase 2, not after.
Bottom line. Treat this repository as a source of design, and maybe code, not as a dependency. The problem it addresses — HTTP audit logging with redaction, retention, and controlled export — is real and compliance-relevant, which is what the opportunity score reflects. The artifact itself is unvalidated at 2 stars and 0 dependents. Fund a one-week spike with an explicit go/no-go, and default to building in-house if the reusable core turns out to be thin.
How can I help you explore Laravel packages today?