Filament Logger 使用教程
项目介绍
Filament Logger 是一个为 Filament 设计的可扩展活动日志记录器,能够开箱即用。它基于 Laravel 框架,并利用了 spatie/laravel-activitylog 包来实现日志记录功能。该项目的目的是提供一个简单易用的日志记录解决方案,适用于各种 Filament 资源事件、登录事件和通知事件。
项目快速启动
安装
首先,通过 Composer 安装 Filament Logger:
composer require z3d0x/filament-logger
配置
安装完成后,运行以下命令来发布配置文件和迁移文件:
php artisan filament-logger:install
使用
在配置文件 config/filament-logger.php
中,你可以自定义需要记录的事件类型。默认情况下,该包会记录 Filament 资源事件、登录事件和通知事件。
以下是一个简单的示例,展示如何在 Filament 资源中启用日志记录:
use Z3d0X\FilamentLogger\Traits\LogsActivity;
class YourFilamentResource extends Resource
{
use LogsActivity;
// 你的资源定义
}
应用案例和最佳实践
案例一:记录用户登录事件
假设你需要记录用户的登录事件,可以在 app/Providers/EventServiceProvider.php
中注册相关事件监听器:
use Illuminate\Auth\Events\Login;
use Z3d0X\FilamentLogger\Listeners\LogLogin;
class EventServiceProvider extends ServiceProvider
{
protected $listen = [
Login::class => [
LogLogin::class,
],
];
}
最佳实践
- 自定义日志消息:在配置文件中自定义日志消息格式,以便更好地满足业务需求。
- 定期清理日志:定期清理旧的日志记录,以避免数据库膨胀。
- 权限控制:确保只有授权用户才能访问日志记录。
典型生态项目
Filament Admin
Filament Admin 是一个现代的、响应式的管理面板框架,与 Filament Logger 结合使用,可以提供一个完整的后台管理解决方案。
Laravel Horizon
Laravel Horizon 是一个用于管理 Laravel Redis 队列的漂亮仪表板和代码驱动的配置系统。结合 Filament Logger,可以更好地监控和管理队列任务。
Laravel Telescope
Laravel Telescope 是一个优雅的调试助手,为你的 Laravel 应用程序提供了一个漂亮的仪表板。结合 Filament Logger,可以更全面地监控应用程序的运行状态。
通过以上模块的介绍和示例,你可以快速上手并充分利用 Filament Logger 的功能,为你的项目提供强大的日志记录支持。