chadicus / psr-log-mongodb
v1.1.3
2017-04-22 17:36 UTC
Requires
- chadicus/psr-log-helper: ^1.2
- chadicus/util-exceptions: >=2.0
- mongodb/mongodb: ^1.0
- psr/log: ^1.0
Requires (Dev)
- chadicus/coding-standard: ^1.3
- phpunit/phpunit: ^5.5
- satooshi/php-coveralls: ^1.0
README
这是使用 MongoDB 作为后端存储实现的 PSR-3。
文档结构
每个构建的 mongo 文档将包含以下字段。
- timestamp 当前 UTC 日期/时间
- level RFC-5424 日志级别
- message 日志消息
- context 不适合字符串的其他信息
示例文档
{ "_id" : ObjectId("57fc0050fc77ae5c017e52b1"), "timestamp" : ISODate("2016-10-08T02:02:12.944Z"), "level" : "info", "message" : "api access", "context" : { "method" : "GET", "resource" : "/widgets/123", "status" : 200 } }
日志记录器不处理日志保留。请通过设置 TTL 从集合中 过期数据。
基本用法
<?php use SubjectivePHP\Psr\Log\MongoLogger; use MongoDB\Client; $collection = (new Client())->selectDatabase('testing')->selectCollection('logs'); $logger = new MongoLogger($collection); $logger->debug('Some debug info');
消息/上下文插值
消息可以包含占位符,这些占位符可以用上下文字符数组中的值替换。在下面的示例中,最终记录的消息将是 用户 chadicus 已创建
<?php use SubjectivePHP\Psr\Log\MongoLogger; use MongoDB\Client; $collection = (new Client())->selectDatabase('testing')->selectCollection('logs'); $logger = new MongoLogger($collection); $logger->info('User {username} was created', ['username' => 'chadicus']);
要求
PSR Log MongoDB 需要 PHP 7.0(或更高版本)。
Composer
要添加库作为本地、按项目的依赖项,请使用 Composer!只需将 subjective-php/psr-log-mongodb
添加到项目的 composer.json
中的依赖项即可。
composer require subjective-php/psr-log-mongodb
联系方式
开发者可以通过以下方式联系:
运行构建
在代码检出后,将 Composer 添加到您的 PATH 中并运行
composer install ./vendor/bin/phpunit ./vendor/bin/phpcs