atereshchuk/filament-user-activity

跟踪用户活动并显示当前活跃用户

1.0.0 2024-04-02 11:56 UTC

This package is auto-updated.

Last update: 2024-10-02 13:01:57 UTC


README

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

Filament Active Users

注册所有请求,并方便地显示当前在线用户,即在过去15分钟/30分钟/60分钟/一天/一周内的任何请求

安装

您可以通过composer安装此包

composer require edwink/filament-user-activity

您可以使用以下命令发布并运行迁移

php artisan vendor:publish --tag="filament-user-activity-migrations"
php artisan migrate

您可以使用以下命令发布配置文件

php artisan vendor:publish --tag="filament-user-activity-config"

可选,您可以使用以下命令发布视图

php artisan vendor:publish --tag="filament-user-activity-views"

这是已发布的配置文件的内容

return [
    "table" => [
        "name" => env("FILAMENT_USER_ACTIVITY_TABLE_NAME", "user_activities"),
        "retention-days" => env("FILAMENT_USER_ACTIVITY_RETENTION_DAYS", 60),
        'active-users' => [
            'timeframe-selection' => [
                15 => '15 Minutes',
                30 => '30 Minutes',
                60 => 'One hour',
                120 => '2 Hours',
                1440 => '24 hours',
            ],
        ],
    ]
];

使用方法

app/Http/Kernel.php 中添加全局中间件

    /**
     * The application's global HTTP middleware stack.
     *
     * These middleware are run during every request to your application.
     *
     * @var array<int, class-string|string>
     */
    protected $middleware = [
        ...
        \Edwink\FilamentUserActivity\Http\Middleware\RecordUserActivity::class,
    ];

将特性添加到 app/Models/User.php 用户模型中以添加 activities 关联

use Edwink\FilamentUserActivity\Traits\UserActivityTrait;
...

class User extends Authenticatable
{
    use UserActivityTrait;
    ...
}

配置您的面板以拥有2个额外的视图

use Edwink\FilamentUserActivity\FilamentUserActivityPlugin;

...
public function panel(Panel $panel): Panel
{
    return $panel
        ...
        ->plugins([
           FilamentUserActivityPlugin::make()
        ])
        ...
}
...

配置一个计划任务,根据您配置的天数(默认60天)截断表,或不时手动运行。

php artisan filament-user-activity:truncate-activities-table

贡献

有关详细信息,请参阅CONTRIBUTING

安全漏洞

请查阅我们的安全策略,了解如何报告安全漏洞。

鸣谢

许可证

MIT许可证(MIT)。有关更多信息,请参阅许可证文件