def-studio/laralog

另一个 Laravel 日志包

2.0.1 2019-10-01 13:12 UTC

This package is auto-updated.

Last update: 2024-09-05 22:24:28 UTC


README

Latest Stable Version Total Downloads License composer.lock

LaraLog (Laravel 6.+)

Laravel 的日志系统在存储数据以及调试一些隐藏的 bug 时非常有用。每当发生错误时,与异常相关的数据会自动记录。

有时,我们需要的不仅仅是 堆栈跟踪 来轻松调试问题。像 请求 URL请求输入数据会话数据 等等,可以帮助我们快速找到确切原因。这正是这个 即插即用 Laravel 包为您所做的 :)

注意:对于 Laravel 5.5,您可能需要使用 Slack Error Notifier 包。

要求

  • PHP 7.2+
  • Laravel 6+

安装

1) 在您的终端/命令行中运行此命令以安装包

composer require def-studio/laralog

2) 使用命令发布迁移

php artisan vendor:publish --tag=laralog_migrations
php artisan migrate

3) 使用此命令生成新的配置

php artisan vendor:publish --tag=laralog_config

它具有以下配置设置

  • (String) app => 将写入每个日志条目的应用程序名称
  • (String) minimum_log_level => 要记录的最小日志级别(可能被连接器的 minimum_log_level 覆盖)
  • (String) log_php_errors => 将 PHP 错误报告添加到日志系统中
  • (Array) connectors => 日志条目将被写入的位置
    • (Array) laravel_db => 使用 Eloquent 将日志条目写入默认 Laravel 数据库
      • (String) minimum_log_level => 要记录的最小日志级别(覆盖默认 minimum_log_level)
    • (Array) mysql => 将日志条目写入自定义 mysql 数据库
      • (String) db_host => 数据库主机名
      • (String) db_name => 数据库名称
      • (String) db_user => 数据库用户名
      • (String) db_password => 数据库密码
      • (String) minimum_log_level => 要记录的最小日志级别(覆盖默认 minimum_log_level)
  • (Array) save_lines => LaraLog 可以保留生成日志条目的文件的行引用
    • (Integer) before => 应保留在日志条目前后的行数
    • (Integer) after => 应保留在日志条目后面的行数
    • (String) min_level => 激活文件行记录功能的最低日志级别
  • (Array) context => 包含在日志中的文件路径
  • (Function) get_user_function => 获取生成日志条目的用户名的自定义函数
  • (String) jwt_key => 加密 API 通信的 JWT 密钥
  • (String) jwt_iss => JWT 发布者

4) (可选)将 LaraLog 设置为 Laravel 的默认日志通道

首先,打开 Laravel config/logging.php 配置文件并在 channels 数组中添加新条目

'laralog' => [
    'driver' => 'monolog',
    'handler' => \DefStudio\LaraLog\Handler::class,
    'level' => 'debug'
],

然后,在同一文件中,在 stack 通道中添加新的通道条目

'channels' => [
	'stack' => [
	    'driver' => 'stack',
	    'channels' => ['daily', 'laralog'],
	    'ignore_exceptions' => false,
	],
	...

如果您想保留 Laravel 日志在 storage/log 中与 LaraLog 条目一起,请保留 daily 通道

作者

许可证

本项目采用 MIT 许可证 - 详细信息请参阅 LICENSE 文件