轻量级Laravel包,用于将自定义日志和错误信息写入数据库。

v1.0.1 2024-09-10 15:13 UTC

This package is not auto-updated.

Last update: 2024-10-02 11:08:05 UTC


README

Latest Version on Packagist Total Downloads Software License

DBlog是一个轻量级且简单的Laravel包,允许您将自定义日志和错误信息写入数据库表。

遵循Laravel日志约定编写,DBlog提供了8个由RFC 5424定义的日志级别,并能够为每个日志添加可选的上下文数组。

注意:此包不与Laravel / Monolog日志系统集成,也不捕获系统级事件。它的目的是用于捕获您自己的自定义日志需求。

安装

通过Composer

$ composer require supersixtwo/dblog

然后在config/app.php中添加服务提供者

Supersixtwo\Dblog\DBlogServiceProvider::class,

并在config/app.php中添加别名

'DBlog'		=> Supersixtwo\Dblog\DBlogClass::class,

重新运行自动加载

$ composer dump-autoload

发布迁移

$ php artisan vendor:publish

运行迁移以在数据库中安装表

$ php artisan migrate

使用方法

日志消息

我们为DBlog提供了熟悉的接口,与Laravel自身的内置日志方法相似。这些方法遵循RFC 5424定义的日志级别,包括:紧急、警报、关键、错误、警告、通知、信息和调试

在类或模型顶部包含DBlog

use DBlog;

在逻辑中使用8个辅助方法之一

DBlog::emergency($msg);
DBlog::alert($msg);
DBlog::critical($msg);
DBlog::error($msg);
DBlog::warning($msg);
DBlog::notice($msg);
DBlog::info($msg);
DBlog::debug($msg);

上下文信息

除了基于文本的消息外,您还可以将包含上下文信息的数组传递给日志方法。这些上下文数据将被转换为json数组并存储在单独的列中。

DBlog::info('New User Creation', ['id' => 45, 'created_by' => 'jdoe']);

DBlog模型和表

模型和表名

为了避免与DBlog外观或其他表的名称冲突,可以使用以下方式访问数据库表

  • 模型名称:DBlogModel
  • 表名称:dblogs

dblogs表列

查询模型

首先,使用命名空间包含DBlogModel

use Supersixtwo\Dblog\DBlogModel;

然后通过查询构建器

$logs = DB::table('dblogs')->get();

或通过Eloquent

$logs = DBlogModel::all();

变更日志

有关最近更改的更多信息,请参阅变更日志

贡献

有关详细信息,请参阅贡献

安全

如果您发现任何与安全相关的问题,请通过电子邮件appsupport@supersixtwo.com联系,而不是使用问题跟踪器。

致谢

许可证

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

鸣谢

此包深受Monolog日志库的启发。