netglue / zf2-log-module
ZF2 模块,提供标准化的集中式日志记录器,其他模块可以作为依赖项使用,并提供用于查看日志文件的视图脚本。
Requires
- php: >=5.3.3
- zendframework/zendframework: 2.*
This package is auto-updated.
Last update: 2021-09-02 12:03:44 UTC
README
日志记录器
此模块提供了一个配置好的日志记录器,它可以将日志记录到 SQLite 数据库或其他您想要使用的任何数据库。它基本上是 Zend\Log\Logger
的一个实例,具有自定义的数据库编写器和格式化器以及一些额外的处理器来捕获额外的信息。
默认情况下,SQLite 数据库使用它自己的适配器,但您可以根据需要覆盖它以使用应用程序范围适配器。我喜欢使用单独的适配器,因为这样即使有连接问题,任何与您使用的 MySQL 适配器相关的异常或错误也会被记录器记录。
日志记录器还默认配置为记录 PHP 消息,如果没有配置其他日志记录器来记录异常,它也会记录这些异常。此外,它将通过监听分发错误事件来记录 MVC 异常。
控制器插件
模块使用别名 logger
注册了一个控制器插件,这样您就可以轻松地从控制器中记录消息,例如使用 $this->logger()->info('Some Message')
读取日志 (进行中)
该模块包含控制器和视图,以便您可以读取日志 - 目的是能够根据多个标准进行筛选,并且能够删除旧记录,清空数据库等。
要实现的功能
- 设置控制台控制器/路由以删除旧日志记录、截断日志表等
- 完成读取日志的视图
安装
作为 composer 包提供
"require": {
"netglue/zf2-log-module": "dev-master"
}
或将 git 仓库克隆到您的模块目录中
使用以下方法在您的应用程序配置中启用模块
$config = array(
'modules' => array(
'NetglueLog',
// ... Other Modules ...
),
);
存在一个 dist 配置文件,大多数代码/配置都有很多注释,但基本上,您应该能够通过提供可写 SQLite 数据库的路径(日志表已就绪)来轻松运行。
// Inside config/autoload/some.config.php
'netglue_log' => array(
'db' => array(
'database' => __DIR__ . '/../../data/logs.sqlite',
),
),
在 log-module/data/
中,您可以找到创建 SQLite 数据库或 MySQL 数据库中日志表的 SQL 文件。还有一个空的 SQLite 数据库,您可以将其复制到您想要的位置,使其可写,并将配置指向它。
依赖项
Chanelog
0.0.2
- 针对问题 #2 的热修复
0.0.1
- 初始测试版发布