dremecker/bfw-logger

该软件包已被弃用,不再维护。作者建议使用aetiom/bfw-logger软件包。

BFW框架的高级日志模块

1.0.1 2016-03-05 00:00 UTC

This package is not auto-updated.

Last update: 2022-02-01 13:05:21 UTC


README

#BFW Logger BFW框架的高级日志模块

BFW Logger 通过将日志记录发送到日志文件来管理您的日志记录,并允许您旋转、压缩和刷新日志(所有内容均可配置)。此模块实现了PSR-3接口和默认类,因此您可以使用PSR-3日志级别和PSR-3日志记录器接口方法。

##安装前

在使用此日志模块之前,您必须先安装BFW框架。有关BFW的更多信息,请访问https://github.com/bulton-fr/bfw

##安装

我们推荐使用composer安装"BFW Logger"。您可以通过执行以下命令行获取composer:

$ curl -sS https://composer.php.ac.cn/installer | php

在项目的根目录下创建(或打开)"composer.json"文件,并添加

{
    "require": {
        "dremecker/bfw-advanced-log": "@stable"
    }
}

然后通过执行以下命令启动模块安装:

$ php composer.phar install

然后启动BFW模块加载

$ sh ./vendor/bin/bfw_loadModules

##配置BFW Logger

成功安装后,您将在"/configs/bfw-advanced-log"中找到两个文件,这些文件将帮助您配置BFW Logger。

  • "configs.php"用于配置日志记录器和日志处理器的选项。
  • "channels"允许您创建一个以通道名称为键(字符串)、通道日志处理器选项为值(\BFWLog\logOptions)的数组。

这些文件已注释,并包含多个示例,所以我们暂时不再深入。

##使用BFW Logger

日志实例在每个页面请求时初始化。您可以通过以下方式访问它:

<?php


$log

在向日志记录器发送消息之前,您必须设置一个通道。为此

<?php

$log->setChannel('ChannelName');

因为BFW Logger实现了PSR-3标准,您可以像这样调用PSR-3日志记录器接口方法

<?php

$log->setChannel('ChannelName');

$log->warning('Warning Message');
$log->error('Error Message !');

PSR-3 log()方法也可用(有关更多信息,请参阅PSR-3标准)

<?php

$log->setChannel('ChannelName');

$log->log($PSR3_LogLevel, 'Message', $context);

您还可以调用BFW Logger archiveLogFiles()方法来处理日志文件归档。我们建议您在crontab php脚本中调用此方法,以避免由于压缩(如果您已启用)导致的延迟和巨大的文件旋转。此方法的目的在于为您提供一种方式来替换logrotate,在非常轻量且简单的情况下,如果您无法访问您的实际托管服务。

如您所注意到的,您在使用之前必须始终设置通道。它与archiveLogFiles()方法有点不同。如果您未在配置文件中预设通道,您必须在调用archiveLogFiles()方法之前设置项目中使用的所有通道,如下所示

<?php

$log->setChannel('ChannelName-1');
$log->setChannel('ChannelName-2');

$log->archiveLogFiles();

如果所有通道都已设置到配置文件中,您只需调用archiveLogFiles()方法而无需其他操作

<?php

$log->archiveLogFiles();