jalallinux/laravel-postgres-audit

Logging queries executed on Postgres even directly!!!

1.0.0 2022-11-24 19:53 UTC

README

Latest Version on Packagist Tests Total Downloads

Logging queries executed on Postgres even directly!!!

Installation

You can install the package via composer:

composer require jalallinux/laravel-postgres-audit

You can publish the config file with:

php artisan vendor:publish --provider="JalalLinuX\PostgreAudit\PGAuditServiceProviders"

This is the contents of the published config file:

return [
/**
     * Target database connection
     */
    'connection' => 'pgsql',


    /**
     * Audit log table name
     */
    'table_name' => 'audit_logs',


    /**
     * Target tables for log
     * Set ['*'] to log for all tables
     * Split tables with comma
     */
    'target_tables' => '*',


    /**
     * Except tables for log
     * Except tables has more priority than target tables
     * Split tables with comma
     */
    'except_tables' => 'migrations, password_resets, personal_access_tokens, jobs, failed_jobs, notifications',


    /**
     * Ignore database user activity
     * Example: postgres, forge
     * NULL for logging all users
     * Split tables with comma
     */
    'except_users' => null,


    /**
     * Primary columns
     * Example: id, uuid, slug
     */
    'primary_columns' => 'uuid',


    /**
     * Primary columns type
     * Example: bigint, uuid, varchar
     */
    'primary_columns_type' => 'uuid',


    /**
     * Operations to log
     * Only support INSERT, DELETE, UPDATE
     */
    'operations' => 'INSERT, DELETE, UPDATE'
];

Usage

Setup:

php artisan pg-audit:setup

Model:

Work with PGAudit model.

\JalalLinuX\PostgreAudit\PGAudit::where('table_name', 'users')->get()

Testing

composer test

Changelog

Please see CHANGELOG for more information on what has changed recently.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

The MIT License (MIT). Please see License File for more information.