v-dem/queasy-log
Composer 安装命令:
composer require v-dem/queasy-log
包简介
Logger classes (currently supports file system, console and simple email logging), part of QuEasy PHP Framework
README 文档
README
QuEasy PHP Framework - Logger
Package v-dem/queasy-log
Contains logger classes compatible with PSR-3 logger interface. Currently file system and console loggers are implemented. This package includes these types of logging:
- Logger (base class, can be used as a container for other loggers)
- FileSystemLogger
- ConsoleLogger (supports ANSI color codes)
- SimpleMailLogger (encapsulates
mail()function)
Features
- PSR-3 compatible.
- Easy to use.
- Easy to extend.
- Nested loggers support.
- Configurable output message format.
Requirements
- PHP version 5.3 or higher
Documentation
See our Wiki page.
Installation
composer require v-dem/queasy-log:master-dev
Usage
Let's imagine we have the following config.php:
return [ 'logger' => [ 'class' => queasy\log\FileSystemLogger::class, // Logger class 'processName' => 'test', // Process name, to differentiate log messages from different sources 'minLevel' => Psr\Log\LogLevel::WARNING, // Message's minimum acceptable log level 'path' => 'debug.log' // Path to logger output file ] ];
Creating logger instance
Include Composer autoloader:
require_once('vendor/autoload.php');
Create config instance (using v-dem/queasy-config package):
$config = new queasy\config\Config('config.php');
Or using arrays:
$config = include('config.php');
Create logger instance (in this case class option can be omitted and will be ignored):
$logger = new queasy\log\Logger($config);
Another way to create logger instance (it will create an instance of $config->logger->class, by default queasy\log\Logger
as an aggregate logger will be used):
$logger = queasy\log\Logger::create($config);
FileSystemLoggerandConsoleLoggerhave default settings and can be used without config. Default log file path forFileSystemLoggerisdebug.log, default min log level isPsr\Log\LogLevel::DEBUGand max isLogLevel::EMERGENCY.
Writing messages to log
Output warning message:
$logger->warning('Test warning message.');
In debug.log you'll see something like this:
2017-12-24 16:13:09.302334 EET test [] [] [WARNING] Test warning message.
Chain log messages
$logger ->warning('going strange') ->error('cannot connect to the database') ->emergency('the website is down');
Using composite/nested loggers
config.php:
return [ [ 'class' => queasy\log\FileSystemLogger::class, 'path' => 'debug.full.log', 'minLevel' => Psr\Log\LogLevel::DEBUG, [ 'class' => queasy\log\ConsoleLogger::class, 'minLevel' => Psr\Log\LogLevel::INFO ], [ 'class' => queasy\log\SimpleMailLogger::class, 'minLevel' => Psr\Log\LogLevel::ALERT, 'mailTo' => 'john.doe@example.com', 'subject' => 'Website Alert' ] ], [ 'class' => queasy\log\FileSystemLogger::class, 'path' => 'debug.log', 'minLevel' => Psr\Log\LogLevel::INFO ] ];
Usage:
$config = new queasy\config\Config('config.php'); $logger = new queasy\log\Logger($config); $logger->info('Hello, world!');
Using date/time in log file name (note "%s" there, it will be replaced by current date and/or time formatted as described in timeLabel)
config.php:
return [ [ 'class' => queasy\log\FileSystemLogger::class, 'path' => 'debug-full.%s.log', 'timeLabel' => 'Y-m-d', 'minLevel' => Psr\Log\LogLevel::DEBUG ] ];
v-dem/queasy-log 适用场景与选型建议
v-dem/queasy-log 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 414 次下载、GitHub Stars 达 1, 最近一次更新时间为 2017 年 09 月 04 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「log」 「logging」 「php」 「logger」 「psr-3」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 v-dem/queasy-log 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 v-dem/queasy-log 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 v-dem/queasy-log 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
A Zend Framework module that sets up Monolog for logging in applications.
Asynchronous Sentry for Symfony - Fire and forget
Stackdriver handler for Monolog (codeinternetapplications/monolog-stackdriver Fork).
Laravel 5.x.x library for integration Monolog Sentry
High-performance, zero-dependency PSR-3 logger for MonkeysLegion with structured logging, handlers, processors, and PHP 8.4 features.
Pacote simplificado para persistência de logs
统计信息
- 总下载量: 414
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 4
- 依赖项目数: 2
- 推荐数: 2
其他信息
- 授权协议: LGPL-3.0-only
- 更新时间: 2017-09-04