Yii2 Audit records and displays web/cli requests, database changes, php/js errors and associated data.
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.
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.
- 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.
Tracks minimal data in the base entry:
user_id
- User ID of the visitor (if any), based onYii::$app->user->id
.ip
- IP Address of the visitor.request_method
- The method used to generate the request, eg:CLI
for console requests andGET
,POST
,DELETE
,PUT
,PATCH
,OPTIONS
orHEAD
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.
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 infoJavascriptPanel
- Automatically log JavaScript errors. Errors and warning are logged automatically by includingJSLoggingAsset
asset bundle. The javascript component also provides methods to manually add logging entries. more infoLogPanel
- Yii logs.MailPanel
- Emails that were sent during the request. more infoProfilingPanel
- Application profiling information.TrailPanel
- Database changes that were made during the request using theAuditTrailBehavior
. more infoExtraDataPanel
- Extra data that you want to store. more infoCurlPanel
- Track your applications cURL requests (including replies, log and headers) more infoYourOwnPanel
- Create your own panel to capture any data you want. more info
Getting started? Try the Installation Guide. You will find further information in the Documentation.
For changes since the last version see the Changelog.
More images are available from the Screenshots page.
Contributions are welcome. Please refer to the contributing guidelines.
Thanks to everyone who has contributed.
- Project Homepage
- Live Demo
- GitHub Project
- Yii2 Extension
- Packagist Package
- Travis CI Testing
- Scrutinizer CI Code Quality
BSD-3 - Please refer to the license.