该包最新版本(v0.2.2)的许可信息不可用。

v0.2.2 2017-05-09 07:22 UTC

This package is not auto-updated.

Last update: 2024-09-29 02:04:34 UTC


README

composer require componentsv/dblog

在 ./config/app.php 中添加到服务提供者数组

'providers' => [
        // Component
        App\Components\DBLog\Providers\DBLogServiceProvider::class,

    ],

可选:发布配置(仅Onsigbaar框架有效)

php artisan component:publish-config DBLog

基本事件触发

紧急

\Event::fire('event.emergency', [['message' => $message]]);

警报

\Event::fire('event.alert', [['message' => $message]]);

关键

\Event::fire('event.critical', [['message' => $message]]);

错误

\Event::fire('event.error', [['message' => $param['e']->getMessage()]]); // use try - catch to get error message

警告

\Event::fire('event.warning', [['message' => $message]]);

通知

\Event::fire('event.notice', [['message' => $message]]);

信息

\Event::fire('event.info', [['message' => $message]]);

调试

\Event::fire('event.debug', [['message' => $message]]);

使用默认配置示例触发事件

事件应该被包裹在一个配置变量数组中,使用默认包配置触发事件的示例。

紧急

if ((config('dblog.logActivity')) && (config('dblog.emergency'))) {
    \Event::fire('event.emergency', [['message' => $message]]);
}

警报

if ((config('dblog.logActivity')) && (config('dblog.alert'))) {
    \Event::fire('event.alert', [['message' => $message]]);
}

关键

if ((config('dblog.logActivity')) && (config('dblog.critical'))) {
    \Event::fire('event.critical', [['message' => $message]]);
}

错误

if ((config('dblog.logActivity')) && (config('dblog.error'))) {
    \Event::fire('event.error', [['message' => $param['e']->getMessage()]]);
}

警告

if ((config('dblog.logActivity')) && (config('dblog.warning'))) {
    \Event::fire('event.warning', [['message' => $message]]);
}

通知

if ((config('dblog.logActivity')) && (config('dblog.notice'))) {
    \Event::fire('event.notice', [['message' => $message]]);
}

信息

if ((config('dblog.logActivity')) && (config('dblog.info'))) {
    \Event::fire('event.info', [['message' => $message]]);
}

调试

if ((config('dblog.logActivity')) && (config('dblog.debug'))) {
    if (isset($param['construct'])) {
        $query      = $construct->toSql();
        $queryCount = $construct->count();

        \Event::fire('event.debug', [
            ['message' => 'Success get data from ' . $table . ' table, count records "' . $queryCount . '", with query : "' . $query . '"']
        ]);
    } else {
        \Event::fire('event.debug', [['message' => $message]]);
    }
}

使用包装器触发事件

在模型类中的示例

use App\Components\DBLog\Traits\DBLog;

class BaseModel extends Model
{
    use DBLog;

    protected $fillable = [];
}

事件包装器

# Emergency
$this->fireLog('emergencyOrError', $message, ['somethingElse' => $something]);

# Alert
$this->fireLog('alertOrError', $message, []);

# Critical
$this->fireLog('criticalOrError', $message);

# Error
$this->fireLog('error', $e->getMessage());

# Warning
$this->fireLog('warningOrError', $message);

# Notice
$this->fireLog('noticeOrError', $message);

# Info
$this->fireLog('infoOrError', $message);

# Debug
$this->fireLog('debugOrError', $message);