ekahal / lumberjack
为 Laravel 提供的简单日志工具
v1.0.4
2023-01-03 07:26 UTC
Requires
- php: >=7.1.0
- jenssegers/mongodb: ^3
- laravel/framework: ^6|^7|^8|^9
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);
...