自定义记录器
2023年5月11日大约 2 分钟
自定义记录器
本主题介绍如何自定义来自云眼灰度标帜(Feature Flag)AB实验 PHP SDK 的实验的日志信息,以帮助进行调试。
记录器记录有关实验的信息,以帮助你进行调试。可以自定义日志信息的发送位置以及跟踪的信息类型。
PHP SDK 带有默认Logger 实现 .若要配置日志级别阈值,可以将日志级别作为参数传递给 DefaultLogger 构造函数。
.PHP
use Monolog\Logger; 
use Eyeofcloud\Logger\DefaultLogger;  
/**  
* To set a log level choose one of the following:  
*   
* INFO: Logger.INFO  
* DEBUG: Logger.DEBUG  
* WARNING: Logger.WARNING  
* ERROR: Logger.ERROR  
* CRITICAL: Logger.CRITICAL  
*  
* To define a different minimum logging level pass it in during initialization  
* The example below shows a minimum logging level of WARNING and outputs  
* to standard out  
*/  
$eyeofcloudClient = new Eyeofcloud($datafile, null, new 
DefaultLogger(Logger::WARNING, "stdout"));为了在生产环境中更好地控制 SDK 配置,请为 Eyeofcloud 客户端传入自定义记录器。自定义记录器是实现LoggerInterface
日志级别
下表列出了 PHP 开发工具包的日志级别。
| 日志级别 | 解释 | 
|---|---|
| 危急 | 记录导致应用崩溃的事件。 | 
| 错误 | 将记录阻止灰度标帜正常运行的事件(例如,初始化中的无效数据文件和无效的灰度标帜键)。用户可以采取措施进行更正。 | 
| 警告 | 记录不会阻止灰度标帜正常运行但可能产生意外结果(例如,将来的 API 弃用、记录器或错误处理程序未正确设置)的事件。 | 
| 信息 | 记录重要事件(例如,决策已启动、决策成功、跟踪已启动和跟踪成功)。这有助于显示 API 调用的生命周期。 | 
| 调试 | 将记录与可帮助我们调试问题的错误相关的任何信息(例如,灰度标帜未运行、用户未包含在标帜规则中)。 |