wa72/simplelogger

Wa72SimpleLogger 是一个实现了 \Psr\Log\LoggerInterface (PSR-3) 的非常简单的日志记录器集合

v1.1.0 2018-03-07 17:10 UTC

This package is auto-updated.

Last update: 2024-09-18 04:00:11 UTC


README

Wa72SimpleLogger 是一个针对 PHP 5.4 的非常简单的日志记录器类集合,实现了 \Psr\Log\LoggerInterface (PSR-3),这是 PHP 框架互操作小组(www.php-fig.org)标准化的通用日志记录接口。

Wa72SimpleLogger 旨在用于小型项目或测试,如果您不需要像 Monolog 这样的完整功能的日志解决方案。

如果您只需要在一个小型 PHP 项目中输出一些日志消息,但希望坚持 PSR-3 标准,这个包就是为您准备的。当您的项目增长时,您只需简单地用更高级的日志解决方案(如 Monolog)替换它即可。

日志记录器

  • \Wa72\SimpleLogger\EchoLogger: 直接输出日志消息

  • \Wa72\SimpleLogger\FileLogger: 将日志记录到文件

  • \Wa72\SimpleLogger\ArrayLogger: 将日志消息保存在数组中供以后使用(例如,显示给用户)

  • \Wa72\SimpleLogger\ConsoleLogger: 将日志记录到 Symfony2 控制台 => 已弃用:请使用 Symfony\Component\Console\Logger\ConsoleLogger 代替

安装

  • composer require wa72/simplelogger

使用

$logger = new \Wa72\SimpleLogger\FileLogger('/path/to/logfile');
$logger->info('This is the first log message');

新增:现在可以在 FileLogger、EchoLogger 和 ArrayLogger 的构造函数中设置最小日志级别

$logger = new \Wa72\SimpleLogger\FileLogger('/path/to/logfile', \Psr\Log\LogLevel::ERROR);
$logger->info('This is the first log message'); // this message will be discarded
$logger->error('This is an error message'); // this message will be logged

在我的某个项目中有一个 "fetcher" 类,它从网络服务中获取一些信息。它需要记录这次获取是否成功以及获取了多少数据。它可以从命令行、后台任务或应用的管理网页中调用。这是三个日志记录器类的用例

  • fetcher 类本身仅记录到任何 PSR-3 兼容的日志记录器

  • 如果从后台任务(cronjob)调用,它将获得一个 FileLogger

  • 如果从命令行调用,它将获得一个 ConsoleLogger

  • 如果从网页界面调用,它将获得一个 ArrayLogger。然后,将此日志记录器的输出显示在网页上。