rioter / logger
该软件包最新版本(v1.0.0)没有提供许可信息。
v1.0.0
2016-02-16 08:57 UTC
Requires
- php: >=5.5
- psr/log: ^1.0
Requires (Dev)
- phpunit/phpunit: >=4.8
This package is not auto-updated.
Last update: 2024-09-20 09:57:11 UTC
README
ITCourses 框架的日志组件
安装
该软件包可在 Packagist 上找到,您可以使用 Composer 进行安装。
composer require rioter/logger
PHP 5.5+
基本用法
需要自动加载
require_once('vendor/autoload.php');
使用命名空间
use Rioter\Logger\Logger; use Rioter\Logger\Adapters;
可用的适配器
$fileAdapter = new Adapters\FileAdapter('logs/log.txt'); / /logging to files $echoAdapter = new Adapters\EchoAdapter(); // logging to html $sysLogAdapter = new Adapters\SysLogAdapter('ITCourses'); // logging to syslog $nullAdapter = new Adapters\NullAdapter(); // log is not saving
要设置适配器,可以使用
$logger->setAdapter($fileAdapter); $logger->setAdapter($echoAdapter); $logger->setAdapter($nullAdapter);
所有适配器方法
$fileAdapter->setAdapterName('FileAdapter'); $fileAdapter->setDateFormat('Y-m-d H:i:s'); $fileAdapter->setLevel(LogLevel::DEBUG, LogLevel::INFO);
##错误处理程序。
创建 ErrorsHandler 类的对象,并将其 Logger 对象传递给它
$handler = new \Rioter\Logger\ErrorsHandler($logger);
并注册处理程序
$handler->regShutdownHandler(); // register shutdown method(last error); $handler->regExceptionHandler(); // register exception $handler->logExceptionHandler($exception); //give exception $handler->regErrorHandler() //register php errors
##示例。将日志记录到文件。
创建 FileAdapter 类的对象,并设置日志文件的路径和名称,您还可以设置日志的最小级别(默认 'debug')
$fileAdapter = new Adapters\FileAdapter('logs/log.txt');
FileAdapter 方法
$fileAdapter->setMethodLogLevelFile(array('error', 'debug'), 'logs/error_debug.txt'); // or you can use array for multiply setting $fileAdapter->setMethodLogLevelFile('warning', 'logs/warning.txt'); // set different pathes for each errors log $fileAdapter->getMethodsLogLevelFiles(); //get pathes and log levels
创建 logger 对象并设置适配器;
$logger = new Logger($fileAdapter);
设置日志、上下文,使用占位符如示例所示
$logger->error('message of errors'); $logger->critical('critical of errors); $logger->debug("debug of errors id = {id} LINE: __LINE__ FILE: __FILE__", array('id'=>1); $logger->warning('warning', array('id'=>1));
输出
2016-02-10 23:54:40.436207: [ERROR] Message: message of errors 1
2016-02-10 23:54:40.436633: [CRITICAL] Message: critical of errors 1
2016-02-10 23:54:40.436866: [DEBUG] Message: debug of errors id = 1 LINE: 22 FILE: /home/iirioterii/server/logger/index.php
2016-02-10 23:54:40.437079: [WARNING] Message: warning