mazfreelance/yii2-audit

Yii2 Audit records and displays web/cli requests, database changes, php/js errors and associated data.

Installs: 61

Dependents: 0

Suggesters: 0

Security: 0

Stars: 2

Watchers: 0

Forks: 112

Type:yii2-extension

v1.1.7 2021-11-25 06:50 UTC

README

Yii2 Audit

Installation via Composer

To install simply run:

composer require mazfreelance/yii2-audit

Documentation

Getting started? Try the Installation Guide. You will find further information in the Documentation.

Join Chat Latest Version Software License Build Status HHVM Coverage Status Quality Score Total Downloads Yii2 Framework

Yii2 Audit records and displays web/cli requests, database changes, php/js errors and associated data.

Abandoned

It was probably already clear, but I'm not able to support this project anymore. I gave up Yii(2) for Laravel almost 6 years ago. Haven't even been using PHP for the last 3 years. So, if anyone supporting one of the forks wants to take lead on this project, let me know and we can probably work something out.

PHP7.2 & Yii 2.0.13 or later

From PHP 7.2 on Object became a reserved keyword. Since enough time went by, we decided to assume everyone is on 7.2 and Yii 2.0.13 by now we won't be keeping 1.0.*-branch (pre PHP 7.2) up to date anymore.

Please use version 1.1.* or later.

Features

Powerful, yet Simple

  • Installs as a simple module so it can be added without any hassle.
  • You can either track specific actions and nothing else or exclude specific routes from logging (wildcard supported).
  • View your data. The module contains a nice viewer that is automatically made available when you add it to your configuration. It has configurable permissions to limit access to this functionality by IPs, roles or users.

Minimal Footprint

Tracks minimal data in the base entry:

  • user_id - User ID of the visitor (if any), based on Yii::$app->user->id.
  • ip - IP Address of the visitor.
  • request_method - The method used to generate the request, eg: CLI for console requests and GET, POST, DELETE, PUT, PATCH, OPTIONS or HEAD for web requests.
  • ajax - If the page was requested using ajax.
  • route - The controller and action of the request.
  • duration - How long the request took to serve.
  • memory_max - The peak memory usage during the request.
  • created - The datetime the entry was created.

Log Data using Configurable Panels

Each panel is optional, and you can even create your own.

  • RequestPanel - Tracks all incoming web and console request data:
    • URL Information including the route and params.
    • PHP SuperGlobals $_GET, $_POST, $_SERVER, $_FILES and $_COOKIES.
    • Headers from the Request and Response.
  • AssetPanel - Asset Bundles loaded for the request.
  • ConfigPanel - Yii and PHP configuration that was used for the request.
  • DbPanel - SQL queries.
  • ErrorPanel - Record all PHP exceptions and errors in the background. Once logged you can configure a cron task to email the errors to a developer so issues can be fixed before they are even reported by a user. more info
  • JavascriptPanel - Automatically log JavaScript errors. Errors and warning are logged automatically by including JSLoggingAsset asset bundle. The javascript component also provides methods to manually add logging entries. more info
  • LogPanel - Yii logs.
  • MailPanel - Emails that were sent during the request. more info
  • ProfilingPanel - Application profiling information.
  • TrailPanel - Database changes that were made during the request using the AuditTrailBehavior. more info
  • ExtraDataPanel - Extra data that you want to store. more info
  • CurlPanel - Track your applications cURL requests (including replies, log and headers) more info
  • YourOwnPanel - Create your own panel to capture any data you want. more info

Screenshots

Dashboard

Dashboard

Entry View

Audit Entry View

More Screenshots

More images are available from the Screenshots page.

Contributing

Contributions are welcome. Please refer to the contributing guidelines.

Thanks to everyone who has contributed.

Project Resources

License

BSD-3 - Please refer to the license. Analytics