我持久化/monolog-mysql

Monolog的处理程序,将消息发送到MySQL

v1.0.4 2017-02-13 17:23 UTC

This package is auto-updated.

Last update: 2024-09-18 21:56:51 UTC


README

Monolog的MySQL处理程序,允许将日志消息存储在MySQL表中。它可以记录文本消息到特定的表,如果表不存在则自动创建。该类还可以动态添加额外的属性,这些属性存储在单独的数据库字段中,可用于后续分析和排序。

主页: http://www.d-herrmann.de/projects/monolog-mysql-handler/

安装

monolog-mysql可以通过composer获取。只需将以下行添加到composer.json中所需部分,然后执行php composer.phar update

"wazaari/monolog-mysql": ">1.0.0"

使用

就像使用其他任何Monolog处理程序一样,将其推送到Monolog日志实例的堆栈中。然而,处理程序需要一些参数

  • $pdo 数据库的PDO实例。传递数据库连接的PDO实例,并选择数据库。
  • $table 存储日志的表名
  • $additionalFields 额外数据库字段的简单数组,应存储在数据库中。列将自动创建,字段可以稍后在记录的额外上下文部分中使用。请参见以下示例。默认为空数组()
  • $level 可以是任何标准Monolog日志级别。使用Monolog静态定义的上下文。 默认为Logger::DEBUG
  • $bubble 默认为true

示例

假设$pdo是数据库实例,您可以使用此类如下

//Import class
use MySQLHandler\MySQLHandler;

//Create MysqlHandler
$mySQLHandler = new MySQLHandler($pdo, "log", array('username', 'userid'), \Monolog\Logger::DEBUG);

//Create logger
$logger = new \Monolog\Logger($context);
$logger->pushHandler($mySQLHandler);

//Now you can use the logger, and further attach additional information
$logger->addWarning("This is a great message, woohoo!", array('username'  => 'John Doe', 'userid'  => 245));

许可证

此工具是免费软件,并按照MIT许可证分发。请查看LICENSE文件以获取更多信息。