ekahal/lumberjack

为 Laravel 提供的简单日志工具

v1.0.4 2023-01-03 07:26 UTC

This package is auto-updated.

Last update: 2024-09-30 01:27:10 UTC


README

将日志机制实现到 Laravel 应用程序的一种简单且最易的方式。

安装

composer require ekahal/lumberjack

添加环境变量 (.env)

MONGODB_HOST=cluster0.abcde.mongodb.net
MONGODB_DATABASE=database
MONGODB_USERNAME=username
MONGODB_PASSWORD=passsword
LUMBERJACK_SECRET=secretcode

将数据库驱动添加到配置 (config/database.php)

'connections' => [
    ....
    'ekljmongodb' => [
        'driver' => 'mongodb',
        'dsn' => 'mongodb+srv://' . env('MONGODB_USERNAME') . ':' . env('MONGODB_PASSWORD') . '@' . env('MONGODB_HOST') . '/' . env('MONGODB_DATABASE') . '?retryWrites=true&w=majority',
        'database' => env('MONGODB_DATABASE', 'myappdb'),
    ],
    ....
],

发布配置文件

php artisan vendor:publish --provider="Ekahal\LumberJack\ServiceProvider"

使用方法

通过 Laravel

use Ekahal\LumberJack\LumberJack;

...
LumberJack::log(USER_ID, URL, ACTION);
LumberJack::track(USER_ID, URL, CUSTOM_ACTION, IP, LOCATION, BROWSER, DEVICE);
...

通过 JavaScript (纯 vanilla, Vue, React 等)

您需要传递之前在环境变量中设置的密钥作为第一个参数。

lumberjack.log(SECRET, USER_ID, URL, ACTION);
lumberjack.track(SECRET, USER_ID, URL, CUSTOM_ACTION, IP, LOCATION, BROWSER, DEVICE);

推荐 ACTION 变量

C - 创建 R - 读取 U - 更新 D - 删除

获取日志

您可以使用 LumberJack 内置函数在您的管理面板或类似平台上获取记录。

use Ekahal\LumberJack\LumberJack;

...
$filters = [
    'user_id' => USER_ID,
    'url' => URL,
    'action' => ACTION,
    'ip' => IP,
    'location' => LOCATION,
    'browser' => BROWSER,
    'device' => DEVICE,
    'from' => DATE_FROM,
    'to' => DATE_TO
];
$logs = LumberJack::fetch($filters);
...