Download the PHP package stealthfirems/laravel-audit-module without Composer
On this page you can find all versions of the php package stealthfirems/laravel-audit-module. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download stealthfirems/laravel-audit-module
More information about stealthfirems/laravel-audit-module
Files in stealthfirems/laravel-audit-module
Package laravel-audit-module
Short Description Auditor module for Laravel applications.
License MIT
Informations about the package laravel-audit-module
laravel auditing module
A module to provide the ability and flexibility to easily audit events and actions that happen within your Laravel application. Designed around StealthFireMS Laravel applications
Installation
install the package via composer:
run this
Once you've done this, run your migrations. This will create a table called audit_logs.
Configuration
Variables for your root.env file
Base template
Obfuscating the IP address for compliance
You can easily obfuscate IP addresses that are submitted to the database by setting the AUDIT_MODULE_OBFUSCATE_IP
variable in your .env file to true. This will strip the first two octets of an IP address, ensuring it meets various
compliance laws, such as GDPR. Behind the scenes this switches the default IP address fetcher with an Obfuscated IP fetcher.
Setting the retention duration
You can define how many days your logs should be kept for by setting the AUDIT_MODULE_RETENTION in your .env file.
If you want to keep all logs indefinitely, set this to 0.
Every time the audit logs are pruned, this will be recorded as an audit log itself.
Usage
There are multiple ways you can use this package. The most common way is to use the audit helper function.
Using the global audit helper
The audit helper function is an easy way to quickly log to the audits table. This function takes a string
as the first argument, and an optional array (context) as the second argument. This will only work if you
don't already have a global function called audit.
Example 1:
Example 2:
Helper Break Down:
Table Break down
Binding to events
If you want to audit an event that happens within your application, you can do so by using the IsAuditableEvent
interface. Coupled with AuditableEvent, this will automatically log the event to the audit log.
Here's an example of an event that utilises the IsAuditableEvent interface:
Using the AuditableModel trait on Models
If you have a model that you'd like to be audited on change, you can use the AuditableModel trait.
By default, this will record all creations, updates and deletions for this model to the audit log.
This uses Laravel model observers to listen for changes. By default, the created_at and updated_at columns
are excluded from auditing.
Customising the AuditableModel functionality
If you'd like to expand the functionality of the AuditableModel trait, you can override its observer
by configuring the observer key in the config file. This will allow you to create your own model observer.
Contributing
Please see CONTRIBUTING for details.
Security
If you discover any security-related issues use the issue tracker.
License
The MIT License (MIT). Please see License File for more information.