自定义日志记录概述
日志可提供系统进程的可见性;例如,调试信息可帮助您了解何时发生错误或导致错误的原因。
本主题侧重于基于文件的日志记录,尽管Commerce还提供了在数据库中存储日志的灵活性。
Adobe建议使用集中式应用程序日志记录,原因如下:
PSR-3合规性
PSR-3标准为日志记录库定义了公用PHP接口。 PSR-3的主要目标是允许库以简单且通用的方式接收Psr\Log\LoggerInterface
对象并向其写入日志。
这让您能够轻松替换实施,而无需担心此类替换可能会破坏应用程序代码。 它还确保即使将来系统的版本中更改了日志实施,自定义组件也能正常工作。
独白
Commerce 2符合PSR-3标准。 默认情况下,Commerce使用独白。 在Commerce应用程序di.xml
中作为Psr\Log\LoggerInterface
的首选项实现的单一日志。
Monolog是一种常用的PHP日志记录解决方案,具有多种使您能够构建高级日志记录策略的处理程序。 以下是Monolog的工作原理摘要。
Monolog logger 是拥有自己的 处理程序 集的通道。 Monolog有许多处理程序,包括:
- 记录到文件和syslog
- 发送警报和电子邮件
- 记录特定的服务器和网络日志记录
- 登录开发(与FireBug和Chrome Logger等集成)
- 登录到数据库
每个处理程序可以处理输入消息并停止传播,也可以将控件传递到链中的下一个处理程序。
可以通过多种不同的方式处理日志消息。 例如,可以将所有调试信息存储在磁盘上的文件中,将日志级别较高的消息放入数据库中,最后通过电子邮件发送日志级别为“严重”的消息。
其他渠道可以具有一组不同的处理程序和逻辑。
recommendation-more-help
386822bd-e32c-40a8-81c2-ed90ad1e198c