2017-25 © Pedro Peláez
 

library ulog

A PHP Logger

image

agarage/ulog

A PHP Logger

  • Monday, May 9, 2016
  • by jasonz93
  • Repository
  • 1 Watchers
  • 2 Stars
  • 18 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 1 Versions
  • 0 % Grown

The README.md

ULog

PHP日志组件,可以使用多种存储方式记录日志,并且可以自由扩展。, (*1)

使用方法

use AGarage\ULog\ULog as ULog;
use AGarage\ULog\Writer\DoctrineStorage as DoctrineStorage;
use Psr\Log\LogLevel as LogLevel;

$config = [
    'host' => 'localhost',
    'service' => 'ULog test',
    'storages' => [
        [
            'class' => 'AGarage\ULog\Storage\SingleFileStorage',
            'level' => ULog::INFO,
            'path' => '/tmp/ulog.log'
        ]
    ]
];

//初始化单例模式ULog
ULog::initialize($config);
//获取单例模式ULog
$logger = ULog::getLogger();

$anotherLogger = new ULog($config);

//初始化一个数据库连接用于ULog
$conn = \Doctrine\DBAL\DriverManager::getConnection([
    'driver' => 'pdo_mysql',
    'host' => 'localhost',
    'user' => 'root',
    'password' => '123456',
    'dbname' => 'app',
    'charset' => 'utf8'
]);

//创建一个DoctrineStorage
$storage = new DoctrineStorage([
    'level' => LogLevel::INFO
]);
//为DoctrineStorage设置数据库连接
$storage->setConnection($conn);

//向ULog添加Storage
$logger->addStorage($storage);

$logger->info('This log will be written by storages in $logger.');
$anotherLogger->debug('This log will not written by storages in $anotherLogger.');

配置说明

ULog

[
    'host' => 'localhost',  //产生日志的主机名(默认localhost)
    'service' => 'ULog'     //产生日志的服务名(默认ULog)
    'storages' => [          //Writers
        [
            'class' => 'AGarage\ULog\Storage\SingleFileStorage',  //Storage的类名(必须)
            'level' => LogLevel::INFO   //大于该等级的日志将被记录(默认DEBUG)
            'path' => '/tmp/ulog.log'   //日志文件路径(必须)
        ]
    ]
]

Storages

SingleFileStorage

使用单个文本日志文件记录日志, (*2)

[
    'class' => 'AGarage\ULog\Storage\SingleFileStorage',  //Writer的类名(必须)
    'level' => LogLevel::INFO   //大于该等级的日志将被记录(默认DEBUG)
    'path' => '/tmp/ulog.log'   //日志文件路径(必须)
]

DoctrineStorage

使用Doctrine记录日志, (*3)

[
    'class' => 'AGarage\ULog\Storage\DoctrineStorage',
    'level' => LogLevel::INFO   //默认DEBUG
]

初始化该类型Storage后需要调用setConnection方法为其设置数据库连接, (*4)

The Versions

09/05 2016

dev-master

9999999-dev

A PHP Logger

  Sources   Download

The Requires

 

The Development Requires

by nicholas

logger log php