siabit / laravel-auditing-elasticsearch
owen-it/laravel-auditing 包的 elasticsearch 驱动。允许将审计存储在 elasticsearch 中。
v1.2
2023-11-17 16:01 UTC
Requires
- php: >=7.0
- elasticsearch/elasticsearch: 7.*
- owen-it/laravel-auditing: ^v13.5
This package is not auto-updated.
Last update: 2024-09-21 18:23:56 UTC
README
此驱动程序提供了将您的模型审计保存到 elasticsearch 的功能。
内容
安装
此驱动程序要求您使用 owen-it/laravel-auditing: ^7.0
。如果满足此条件,您可以像这样安装驱动程序:
composer require iconscout/laravel-auditing-elasticsearch
设置
如果需要更改驱动程序默认行为,请将以下配置条目添加到 config/audit.php 中。配置文件的 queue
键应如下所示:
...
'queue' => env('AUDIT_QUEUE', true),
...
或者
...
'queue' => env('AUDIT_QUEUE', [
'queue' => 'default',
'connection' => 'redis'
]),
...
配置文件的 driver
键应如下所示:
...
'driver' => Iconscout\Auditing\Drivers\ElasticSearch::class,
...
配置文件的 drivers
键应如下所示:
...
'drivers' => [
'database' => [
'table' => 'audits',
'connection' => null,
],
'es' => [
'client' => [
'hosts' => [
env('AUDIT_HOST', 'localhost:9200')
]
],
'index' => env('AUDIT_INDEX', 'laravel_auditing'),
'type' => env('AUDIT_TYPE', 'audits')
],
],
...
控制台命令
以下列出了可用的 artisan 命令
命令 | 参数 | 描述 --- | --- auditing:es-index | 将所有模型记录索引到搜索索引中。 auditing:es-delete | 从索引中删除所有模型记录。
要获取详细说明和所有可用选项,请在命令行中运行 php artisan help [command]
。
用法
您可以使用 ElasticSearch 驱动程序在任何可审计模型中如此使用,以将审计记录存储在 elasticsearch 中
<?php
namespace App\Models;
use Iconscout\Auditing\Drivers\ElasticSearch;
use Illuminate\Database\Eloquent\Model;
use OwenIt\Auditing\Auditable;
use OwenIt\Auditing\Contracts\Auditable as AuditableContract;
class SomeModel extends Model implements AuditableContract
{
use Auditable;
/**
* ElasticSearch Audit Driver
*
* @var Iconscout\Auditing\Drivers\ElasticSearch
*/
protected $auditDriver = ElasticSearch::class;
// ...
}
您可以使用 ElasticSearchAuditable 特性在任何可审计模型中如此使用,以从 elasticsearch 中检索审计记录
<?php
namespace App\Models;
use Iconscout\Auditing\Drivers\ElasticSearch;
use Iconscout\Auditing\Traits\ElasticSearchAuditable;
use Illuminate\Database\Eloquent\Model;
use OwenIt\Auditing\Auditable;
use OwenIt\Auditing\Contracts\Auditable as AuditableContract;
class SomeModel extends Model implements AuditableContract
{
use Auditable, ElasticSearchAuditable;
/**
* ElasticSearch Audit Driver
*
* @var Iconscout\Auditing\Drivers\ElasticSearch
*/
protected $auditDriver = ElasticSearch::class;
// ...
}
// Get first available Icon
$icon = Icon::first();
// Get all associated Audits
$all = $icon->esAudits;
// Get all associated Audits via parameters ($page & $perPage)
$all = $icon->esAudits($page = 1, $perPage = 10);
捐赠
通过 贡献 或捐赠一小笔资金来帮助保持项目开发。预先感谢。
通过 Paypal 直接捐赠
有关使用 owen-it/laravel-auditing 的自定义驱动程序的更多信息,请访问他们的 主页