bvdputte / kirby-log
为 Kirby 3 提供的日志工具 - 基于 katzgrau/KLogger
2.2.1
2022-12-05 13:53 UTC
Requires
- getkirby/composer-installer: ^1.1
- katzgrau/klogger: ^1.2.2
- studio24/rotate: ^1.0
README
这是一个可以与 Kirby CMS 一起使用的简单日志工具。它是对 KLogger 的封装。
安装
- 将 master.zip 解压到
site/plugins/kirby-log
文件夹,或者 git submodule add https://github.com/bvdputte/kirby-log.git site/plugins/kirby-log
或composer require bvdputte/kirby-log
用法
默认情况下,所有 kirby 系统异常都会记录到 site/logs/kirbylog.log
。
(可以在 config.php 中通过 'bvdputte.kirbylog.exceptionlog' => false
禁用。
日志 API
$site->log("message", "level" /* optional */, "appendcontext" /* optional */);
默认用法
$site->log("This text will be added to the default log");
- 输出:
[2018-08-06 17:26:50.376956] [info] This text will be added to the default log
。 - 日志文件:
/site/logs/kirbylog.log
💡 当不存在时,日志文件将自动创建。
定义日志级别
根据 PSR-3 定义,您可以在 ->log()
方法的第二个参数中传递所需的日志级别。
$site->log("My message", "error");
- 输出:
[2018-08-06 17:26:50.372955] [error] My message
- 日志文件:
/site/logs/kirbylog.log
💡 默认日志级别是 info
。 这可以在选项中设置。
将变量记录到日志中
AppendContext 可以将变量包含到日志中。
$arr = ["foo", "bar", "baz"]; $site->log("My message", "debug", $arr);
- 输出
[2018-08-06 17:26:50.373625] [debug] My message
0: 'foo'
1: 'bar'
2: 'baz'
- 日志文件:
/site/logs/kirbylog.log
自定义日志记录器
API
$site->logger("logname", "options" /* optional */, "defaultlevel" /* optional */)->log("message", "level" /* optional */, "appendcontext" /* optional */);
1. 自定义日志名称
$site->logger("my-own-logfile.log")->log("This event will be added to my custom named logfile");
- 输出:
[2018-08-06 17:26:50.376956] [info] This event will be added to my custom named logfile
。 - 日志文件:
/site/logs/my-own-logfile.log
2. 日志记录器的扩展选项
有几个扩展选项可用
- dateFormat: 使用 PHP 语法
- logFormat: 格式化选项
- appendContext: 启用/禁用
将它们作为关联数组传递给日志记录器
$options = [ 'dateFormat' => 'Y-m-d G:i:s.u', 'logFormat' => false, 'appendContext' => true, ]; $site->logger("infolog.log", $options)->log("Info about something", "info");
更多关于 KLogger 文档 的信息。
Kirby 可配置选项
- 默认的日志文件保存位置是 Kirby 默认的日志位置:
/site/logs/
。您可以通过 自定义文件夹设置 并然后更改 日志根 来更改此位置。 - 默认的日志名称是
kirbylog.log
。在config.php
中通过'bvdputte.kirbylog.logname' => 'custom-logname.log'
来更改。 - 默认的日志级别是
info
。通过config.php
中的'bvdputte.kirbylog.defaultloglevel' => 'debug'
来更改。请确保 使用有效的 PSR-3 日志级别。 'bvdputte.kirbylog.rotateLogs' => true
: 当日志文件大于 10MB 时,默认启用日志轮换。设置为 false 来禁用日志轮换'bvdputte.kirbylog.rotateLogSizeThreshold' => '10MB' // 可以是 'B', 'KB', 'MB' 或 'GB'
: 日志轮换的基于大小的阈值。默认为 10MB
免责声明
此插件提供“原样”使用,不提供任何保证。请在自己的风险下使用,并在将插件用于生产环境之前始终自行测试。如果您发现任何问题,请创建新问题。
许可证
不建议在推广种族主义、性别歧视、恐同、动物虐待、暴力或其他任何形式仇恨言论的项目中使用此插件。