calguy1000 / logger
一款强大的应用程序日志记录和日志查询工具。
dev-master
2016-08-17 02:05 UTC
This package is not auto-updated.
Last update: 2024-09-28 18:10:37 UTC
README
一个简单的日志工具,具有轮换、并发、重复计数和搜索支持。
此库为您应用程序提供将调试信息、信息、警告和错误记录到文本文件的能力。该库支持轮换、按顺序计数重复消息、从多个进程写入同一文件以及查询文件。它适用于需要各种调试、日志记录或审计功能的程序。
功能
- 提供一种简单、可扩展的机制,允许应用程序执行日志记录。
- 提供日志接口
- FileLogger类可以计数相同的连续消息
- 可以跟踪单独的(或组合的)键。被称为“部分”和“项”
- AutoRotateFileLogger支持基于文件大小(千字节)或年龄(小时)的最大文件数进行日志轮换。
- 使用独占锁定来锁定文件以供写入
- 支持简单查询保存的日志文件
简单的文件日志记录
require '../vendor/autoload.php'
use calguy1000\logger\FileLogger as FileLogger;
$logger = new FileLogger('logfile.txt');
$logger->debug('A debug message');
$logger->info('An information message');
$logger->warn('A warning message');
$logger->error('A fatal error');
使用自动轮换记录器
require '../vendor/autoload.php'
use calguy1000\logger\AutoRotateFileLogger as AutoRotateFileLogger;
$logger = new AutoRotateFileLogger('logfile.txt',24,2000,30);
$logger->debug('A debug message');
$logger->info('An information message');
$logger->warn('A warning message');
$logger->error('A fatal error');
查询日志
require '../vendor/autoload.php'
use calguy1000\logger\Logger as Logger;
$parms = [ 'filename'=>'logfile.txt','limit'=>50,'msg'=>'*fatal*` ];
$query = new Logger\query($parms);
$rs = $query->execute();
foreach( $rs as $key => $item ) {
print_r($item);
}
局限性
- 每个日志字符串的最大长度为512字节
- 日志文件的大小最大为50mb
- 日志文件的最大年龄为60天。