chadicus/psr-log-mongodb

此包已被废弃,不再维护。作者建议使用 subjective-php/psr-log-mongodb 包。

使用 mongo 作为后端存储的 PSR LoggerInterface 的具体实现

v1.1.3 2017-04-22 17:36 UTC

This package is auto-updated.

Last update: 2023-05-08 18:17:44 UTC


README

Code Quality

Latest Stable Version Latest Unstable Version License

Total Downloads Monthly Downloads Daily Downloads

这是使用 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