juanchosl/logger

使用PSR接口的小型日志记录器

1.0.3 2024-03-04 21:00 UTC

This package is auto-updated.

Last update: 2024-09-21 01:13:47 UTC


README

描述

一个小型适配器,用于使用PSR3保存日志数据

如何使用

直接声明一个Logger

$logger = new JuanchoSL\Logger\Logger(PATH . DIRECTORY_SEPARATOR . 'error.log');
$logger->error("This is a message error");

使用提供的Debugger类声明一个Logger

use JuanchoSL\Logger\Debugger;

$debugger = Debugger::getInstance(PATH);
$debugger->setLogger('errors');

//.... your code ...

Debugger::getInstance()->getLogger('errors)->error("This is a message error");

声明多个Logger以保存分离的数据

use JuanchoSL\Logger\Debugger;

$debugger = Debugger::getInstance(PATH);
$debugger->setLogger('errors');
$debugger->setLogger('database');

//.... your code ...

Debugger::getInstance()->getLogger('errors)->error("This is a message error");
Debugger::getInstance()->getLogger('database)->debug($sql);

初始化错误或异常处理器

use JuanchoSL\Logger\Debugger;

$debugger = Debugger::getInstance(PATH);
$debugger->initErrorHandler('errors', E_ALL^E_USER_NOTICE);
$debugger->initExceptionHandler('errors');

将声明的Loggers作为依赖项注入到库中

use JuanchoSL\Logger\Debugger;
use JuanchoSL\Orm\engine\Drivers\Mysqli;

$debugger = Debugger::getInstance(PATH);
$debugger->initErrorHandler('errors', E_ALL^E_USER_NOTICE);
$debugger->initExceptionHandler('errors');
$debugger->setLogger('database');

$database = new Mysqli($credentials);
$database->setLogger($debugger->getLogger('database'));