phpointless / monolol
符合PSR-3标准的lol-gger
1.2.0
2016-01-23 11:27 UTC
Requires
- monolog/monolog: ~1.12
Requires (Dev)
- phpunit/phpunit: ~4.5
This package is not auto-updated.
Last update: 2024-09-28 17:17:50 UTC
README
符合PSR-3标准的lol-gger
质量保证
安装
使用composer
composer require PHPointless/monolol
如何使用
Monolol为Monolog提供了一种新的包装处理程序:LolHandler。LolHandler将应用一个Lolifier,它将在包装处理程序处理的记录上执行一些操作。
例如,我们想要随机打乱所有将被Monolog StreamHandler处理的记录的日志消息单词。以下是实现这一功能的代码
<?php use Monolog\Logger; use Monolog\Handler\StreamHandler; use Monolol\Handlers\LolHandler; use Monolol\Lolifiers; $logger = new Logger('myLog'); $streamHandler = new StreamHandler(__DIR__ . '/monolol.log'); $lolHandler = new LolHandler($streamHandler, new Lolifiers\Shuffle()); $logger->pushHandler($lolHandler); $logger->info('My littlest pony'); $logger->error('This burger has no cheese');
可用的Lolifier
- Blackout:忘记一半的句子
- Shuffle:记录消息中包含的单词将被随机打乱
- Confuse:此Lolifier将随机更改记录的日志级别
- GeekTime:只有当时间是下午1:37(13:37)时,才会处理记录
- Hangman:在阅读日志文件时想玩Hangman游戏吗?
- Hash:消息将使用随机选择的算法进行散列
- LaMerNoire:消息将被替换为以下字符串:“La mer Noire”
- Mirror:消息的内容将被反转(desrever eb lliw tnetnoc egassem sdrocer)
- NotGiveAFuck:日志级别高于INFO的消息将被替换为以下字符串:“似乎您的应用程序遇到了问题。但既然我们不在乎,我们不会告诉您问题是什么。祝您愉快。”
- NyanCat:Nya nya nya nya nya nya nya nya nya nya nya!
- Quote:消息将被随机选择的引语替换。Quote Lolifier需要一个QuoteProvider。以下是如何使用它的示例
$quoteProvider = new Lolifiers\QuoteProviders\Kaamelott\Kadoc(); $lolHandler = new LolHandler($streamHandler, new Lolifiers\Quote($quoteProvider));
如果您想从多个提供者那里获取引语,可以使用QuoteProviders\Collection
$quoteProvider = new Lolifiers\QuoteProviders\Collection(); $quoteProvider->add(new Lolifiers\QuoteProviders\Kaamelott\Kadoc()) ->add(new Lolifiers\QuoteProviders\Kaamelott\Karadoc()) ->add(new Lolifiers\QuoteProviders\Kaamelott\Perceval()); $lolHandler = new LolHandler($streamHandler, new Lolifiers\Quote($quoteProvider));
- Warp:处理记录将通过Warp旅行
- Yell:在嘈杂环境中阅读您的日志文件
- Yolo:“一个错误?你在说什么?没有错误!”所有日志级别高于INFO的记录将不会被处理
- Tourette:Monolog患有抽动症。此Lolifier需要一个SwearWordsProvider。以下是如何使用它的示例
$swearWordsProvider = new Lolifiers\SwearWordsProviders\DefaultProvider(); $lolHandler = new LolHandler($streamHandler, new Lolifiers\Tourette($swearWordsProvider));