【发布时间】:2017-12-23 07:02:59
【问题描述】:
我正在使用 Rails 5,需要创建一个自定义 Rails 记录器。
例如,在控制器的某些地方,我想要记录调用:
Rails.logger.info('Event happened',
{ event_id: '...', email: '...', ...}
)
在我的日志文件中,我希望看到类似这样的内容:
{
"level": "info",
"ts": 1507972311.8043,
"caller": "controller/api/v2/news.rb:101",
"msg": "Event happened",
"app": "My App",
"env": "production",
"context": {
"event_id": "1234567",
"email": "example@gmail.com",
"first_name": "John",
"last_name": "Doe"
}
}
这可能吗?如何同时为所有日志级别(信息/调试/错误)执行此操作?
【问题讨论】:
-
你可以使用这样的东西。 logger.debug {"人物属性哈希:#{@person.attributes.inspect}"}
标签: ruby-on-rails ruby logging