shark/formlogger-bundle
A Symfony bundle for logging form submissions. The Shark FormLogger Bundle helps developers capture and store submitted form data for auditing, debugging, and analysis, with straightforward integration into existing Symfony applications and configurable logging behavior.
Framing: The request is scoped as a Laravel package evaluation, but shark/formlogger-bundle is a Symfony 2 bundle distributed under the shark/ namespace. That is the first and largest TPM finding: the question "how do we leverage this in Laravel?" has no defensible answer at the package level. What is portable is the capability — automatic capture of form submissions and validation errors into a PSR-3 logger — not the code.
HttpKernel, DI container, and Form component. It registers a service definition / compiler pass and subscribes to FormEvents (likely POST_SUBMIT) to serialize FormInterface data and FormErrorIterator output. Laravel's validation surface is Illuminate\Validation\Validator, FormRequest, and ValidationException — there is no persistent form object and no post-submit form event to hook. There is no shared contract to adapt against.symfony/form, symfony/http-kernel, symfony/dependency-injection, symfony/event-dispatcher) alongside Illuminate, producing duplicate event dispatchers and version conflicts. Reaching parity would mean booting a Symfony kernel or hand-wiring a Symfony dispatcher purely to feed a logger — disproportionate effort for what is functionally tens of lines of Laravel code.php >=5.3 with no upper bound and predate modern PSR-4/type hygiene; PHP 8.2+ compatibility is unlikely without patches.ValidationException listener, Telescope/Sentry, or an audit table).TPM verdict: Do not adopt as a strategic dependency. Record the capability requirement, satisfy it natively, and close the request as "not applicable to our stack."
FormSubmissionLogger listener subscribed to application events, or — more directly — a global middleware or exception-handler hook that catches ValidationException.FormRequest base class/trait that emits a structured event on validation failure.config/logging.php (JSON formatter, daily driver) with an explicit allowlist of captured fields for redaction.form_errors table) only if trend analysis is the real goal.EventDispatcher does not collide with Illuminate's dispatcher bindings, and confirm no symfony/http-kernel autoload conflict. Realistically incompatible without a shim we would have to write and own.TPM recommendation: Do not adopt shark/formlogger-bundle. Capture the underlying requirement — form-failure observability with PII redaction and sampling — satisfy it with a small native Laravel listener plus a redacted structured log channel, and close the dependency request as "not applicable to our stack." The value is in the capability, not the package.
How can I help you explore Laravel packages today?