tsitsishvili/elastic-audit
A Laravel package for Elasticsearch-backed audit logging. Capture Eloquent model changes and application events, store structured audit records in Elasticsearch, and search or analyze activity trails at scale with a simple, scalable setup.
Consider it when most of the following hold:
Look elsewhere when:
@tsitsishvili authored every functional PR). Assess bus factor, issue responsiveness, and whether you can vendor or fork it. Dependabot PRs are hygiene, not a support contract.For executives (one paragraph): A Laravel package that writes application audit logs to Elasticsearch, now at v4.2.0. The important additions are operational rather than functional: it can now surface its own write failures and check that its Elasticsearch schema is healthy. That matters because the main risk with any audit trail is silent failure — the system looks compliant until someone asks it a question it cannot answer. It is a credible candidate if we already run Elasticsearch and have a compliance driver; it is not a compliance product and comes with no tamper-evidence or SLA claims. Single-maintainer dependency; recommend a time-boxed evaluation against our requirements rather than adoption on feature list alone. Cost is low in engineering time, moderate in the operational obligations it creates (retention, PII handling, access control).
For engineering: Two things to verify before we commit. First, failure semantics — are audit failures observability-only, or do they affect delivery/retry? We need to know whether the audit path can drop records and how we would find out. Second, source identity — does it change the document shape, defaults, or require config/mapping migration? Read the diff on PR #17, not the release note. Also confirm Laravel/PHP version constraints, whether writes are sync or queued, and index/mapping lifecycle ownership (who creates and versions indices). Then run a short spike: instrument a non-critical flow, force a write failure and a mapping mismatch, and confirm both are visible in our alerting within one page. If that works, the reliability argument is real and we can scope the compliance use case on top of it.
How can I help you explore Laravel packages today?