如何解决从后台Resque作业写入日志输出的“正确”方式?
| Resque工作只是普通的红宝石对象。我可以在其中使用puts
调用以将输出产生到控制台,也可以使用STDOUT
实例化标准RubyLogger
类并使用它。
但是,有没有从非控制器或模型的地方登录Rails的正确方法?我看到Rails.logger
返回BufferedLogger
,但是当我在其上调用info
或warn
等时,什么也没发生。如果我在其上调用flush
,它将仅返回一个空数组,并且不输出任何内容。
这里的惯例是什么?
解决方法
我不太确定是否有约定。直到最近我才拥有一个非常丑陋的日志系统。现在,我使用木材将log4r与Rails集成。这确实使日志记录变得更好了,因为我现在已经命名了记录器(例如,记录器与类名匹配-非常适合过滤输出),并且我可以在每个记录器(即每个类)的基础上控制日志级别。
如果您想使用graylog2来汇总日志,则还有一个用于log4r的GELF适配器。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。