Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Activity Log Bundle

Activity Log Bundle Laravel Package

madmis/activity-log-bundle

A Symfony bundle for tracking user activity and entity changes. It provides configurable activity logging, Doctrine event integration, and a simple API to record, retrieve, and display activity history in your application.

View on GitHub
Deep Wiki
Context7

Activity log bundle - Extended doctrine loggable bundle

Frequently asked questions about Activity Log Bundle
Can I install madmis/activity-log-bundle in a Laravel application?
There is no supported installation path. The package is a Symfony bundle that depends on Symfony bundle registration, Doctrine ORM, and the Gedmo Doctrine Loggable extension, none of which Laravel ships with or expects. Attempting composer require will pull in symfony/* and doctrine/* packages that conflict with Laravel's Eloquent-based persistence layer. Use a Laravel-native package such as spatie/laravel-activitylog or owen-it/laravel-auditing instead.
Is madmis/activity-log-bundle a Laravel package or a Symfony bundle?
It is a Symfony bundle, not a Laravel package, despite being catalogued alongside Laravel and PHP packages. It is built on top of the Gedmo Doctrine Loggable extension and hooks into Doctrine's ORM event system. Laravel developers evaluating it should treat it as a reference design rather than a dependency.
Which Laravel, PHP, and Symfony versions does madmis/activity-log-bundle support?
The bundle is not designed for Laravel at all, so there are no Laravel version constraints to satisfy. It targets Symfony 2.x and 3.x plus Doctrine ORM 2.x, and the last tagged release was 2017-08-07. Running it on PHP 8.2+ or Symfony 6/7 is likely to produce deprecations and fatal errors, so audit its composer.json constraints before any prototype.
How does madmis/activity-log-bundle capture Doctrine entity changes?
It registers a Doctrine event subscriber that hooks onFlush against the EntityManager, diffs managed entities against their original state, and persists version rows. Each row records the object class, object id, version number, a serialized field-level delta, and contextual user and request data. The design is a solid reference for field-level audit diffing even if you never install it.
What are the best Laravel alternatives to madmis/activity-log-bundle?
For most Laravel applications, spatie/laravel-activitylog and owen-it/laravel-auditing cover 80 to 90 percent of typical activity logging and audit requirements. Both are actively maintained, Eloquent-native, and support storing old and new attribute values as JSON. Reach for a custom observer-based implementation only if a genuine gap remains after evaluating those two.
Is madmis/activity-log-bundle still maintained and safe for production?
No. The repository is archived, has around 11 stars and zero dependents, and its last release was in August 2017. An archived repo means no security advisory stream, no CVE response, and no upgrade path, which is exactly the wrong risk profile for an audit-trail subsystem that security reviewers scrutinise. It also transitively depends on gedmo/doctrine-extensions, whose listener APIs have changed substantially since.
How do I reimplement field-level activity diffing in Laravel with Eloquent?
Port the data model, not the code. Use Eloquent model observers or a LogsActivity trait, and on the created, updating, and deleted events compare getOriginal() against getChanges() to build the delta. Persist old_values and new_values as JSON so you keep the same field-level fidelity the bundle provides. You can test this with database assertions around dispatched events in a feature test.
What database schema should a Laravel audit log table use?
A practical shape is an audit_logs table with auditable_type, auditable_id, event, old_values and new_values JSON columns, actor_id, actor_type, and created_at. Add a composite index on auditable_type, auditable_id, created_at so you can efficiently replay the history of a single record. This mirrors the bundle's (object_class, object_id, version) design without any Symfony or Doctrine dependency.
Can I run madmis/activity-log-bundle inside Laravel through a Doctrine bridge?
In theory you could, but in practice it is not viable. You would need Symfony bundle registration, a bootstrapped Doctrine EntityManager, and Gedmo subscribers all coexisting inside a Laravel app, with no precedent or community support for that combination. The setup effort is high and the result would be fragile, so run a composer dry run early if anyone proposes it. The sane path is reimplementing the diff semantics in Eloquent.
Should Laravel activity logs be written synchronously or through a queue?
It depends on write volume and on why you are logging. Queued listeners implementing ShouldQueue keep request latency low for high-volume user-facing activity feeds, but compliance and forensic audit trails usually need synchronous, append-only writes with tamper-evidence. Also settle PII and GDPR retention and erasure obligations for logged field values before choosing a storage strategy.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
3mdikram/worldmoneywords
snowsoft/config
itmosoft/laravel-subscriptions
larva/laravel-ai-qwen
diephp/sequences
users-au/socialite-provider
twidpay/twid-logger
mrnewport/laravel-plaid
mrnewport/laravel-repo
mrnewport/laravel-docsign
mrnewport/laravel-stow
mrnewport/laravel-flow
mrnewport/laravel-priceable
mrnewport/laravel-nestedterms
fredmeng/laravel-apidoc-generator
itstructure/laravel-multilingual-tools
pdustdar/elasticsearch
markupai/php-sdk
rlacerda83/lumem-microservice-shipment
uni-method/symfony-lib