Я использую 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": "[email protected]",
"first_name": "John",
"last_name": "Doe"
}
}
Это возможно? Как сделать это для всех уровней лога (информация/отладка/ошибка) одновременно?