fgm / mongodb_logger
适用于MongoDB的PSR/3日志生成器
Requires
- php: >5.4.0
- psr/log: ^1.0
This package is auto-updated.
Last update: 2024-09-28 18:05:23 UTC
README
这是一个MongoDB的OSInet日志器:它允许您的PHP应用程序记录与您的mongod
或mongos
实例通信的mongo
扩展的低级操作。
它不提供PSR-3日志目标,但提供了一种从您的MongoDB使用代码中收集信息并将它们推送到您选择的PSR-3日志记录器(例如,在常规PHP代码中使用Monolog,或在Drupal 6/7/8中使用mongodb_watchdog
)的方法。
此代码需要旧的mongo
扩展:这些功能已从新的mongodb
(phongo)扩展中删除
- https://jira.mongodb.org/browse/PHPLIB-30 : 不会修复
- https://jira.mongodb.org/browse/PHPLIB-38 : 不会修复
- mongodb/mongo-c-driver#80 : 已关闭
(c) 2015 Ouest Systèmes Informatiques
根据通用公共许可证版本2或更高版本授权。
独立运行演示
-
请确保您有一个没有在
localhost:27017
上提供任何重要数据的开发MongoDB实例。实例中的任何数据都可能丢失。 -
克隆仓库
https://github.com/FGM/mongodb_logger.git cd mongodb_logger
-
运行
composer install
以获取依赖项 -
就是这样:现在您可以在包本身中运行演示
`php loguser.php`.
将演示代码作为您的应用程序运行
-
请确保您有一个没有在
localhost:27017
上提供任何重要数据的开发MongoDB实例。实例中的任何数据都可能丢失。 -
创建一个composer文件
mkdir my_demo cd my_demo composer init
-
当Composer询问需求时,回答常规的Composer问题,当Composer请求需求时,请求
fgm/mongodb_logger
,不要指定版本 -
安装依赖项
composer install
-
将
loguser.php
文件复制到您的项目目录cp vendor/fgm/mongodb_logger/loguser.php .
-
就是这样:现在您可以作为一个独立的应用程序运行演示
php loguser.php
在您的包中使用日志回调
-
将包添加到您的Composer依赖项列表中。
-
根据需要实例化
Logger\Emitter
。DIC可能有所帮助。use FGM\MongoDBLogger\Logger\Emitter; use Psr\Log\LogLevel; // Build an emitter. $emitter = new Emitter(); // Inject your own PSR-3 logger. $emitter->setLogger($logger); // You can choose your log level. $emitter->setLogLevel(LogLevel::DEBUG);
-
使用发射器为您的应用程序创建mongodb://上下文。
$context = $emitter->createContext();
-
在连接到MongoDB时传递您刚刚构建的上下文。
$client = new \MongoClient($server, $options, ['context' => $context]);
-
就是这样。您所有的操作现在都可以被记录。
商标
- MongoDB是MongoDB,Inc.的注册商标 https://mongodb.ac.cn/
- OSInet是Ouest Systèmes Informatiques的商标 http://www.osinet.fr/