记录行格式化

时间:2013-02-16 21:42:05

标签: php class logging psr-3

基于PSR-3标准(以及随附的接口/类 - https://github.com/php-fig/log)实现日志系统时遇到问题。

我创建了一些扩展PSR-3的类:logger,它使用适配器进行实际日志记录(记录器类存储适配器实例并调用其中的log()方法)然后我来到文件适配器(将日志消息写入的适配器) file(s))我正在寻找一些实现自定义日志行格式的方法。我的意思是我可以将消息记录为

[01/01/2013 12:00:00] NOTICE: Log message content\n

以及

user: Log message content (NOTICE) ~ 01-01-2013

(完成自定义订单和内容)

另外,我想为此创建单独的类。

有没有办法以非常合适的方式做到这一点,所以其他人(即使是低技能的人)也不会有改变这个的问题?

1 个答案:

答案 0 :(得分:1)

也许它是主流,但你看过Monolog

您可以实施HandlerInterface而不是LoggerInterface。格式化将由Monolog使用您的模式解决。

此解决方案也更好,因为您可以在Monolog中使用ONE Logger和许多处理程序。

有一个缺点/好处(你决定):你必须在处理程序中实现你的级别日志记录,这可能有点难看。