Как регистрировать ответы от моих контроллеров Rails?

У меня есть API Rails, который в настоящее время используется мобильным приложением для выполнения транзакций базы данных.

API возвращает объект JSON, и я хотел бы иметь возможность регистрировать все ответы, которые каждый запрос мобильного приложения возвращает на моем сервере Rails.

Я просмотрел lograge, но, похоже, у них нет возможности регистрировать ответы от ActionController.

Как я могу подойти к этому?


person David C    schedule 18.06.2014    source источник


Ответы (1)


Вы можете регистрировать свои ответы прямо перед их отправкой в ​​мобильное приложение. См. главу 2.3

У вас будет что-то вроде

def your_method
  #do_something
  logger.info response_params
  respond_with response_params
end
person uno_ordinary    schedule 18.06.2014
comment
Спасибо! Это, безусловно, полезно! У меня есть Rack::Middleware, Rack::ContentLength активирован, и я пытаюсь узнать Content-Length. Используя описанный выше метод, когда я проверяю response.headers, Content-Length не появляется, потому что этот ответ, который выводится, находится перед добавленным заголовком? Если да, то как мне получить к нему доступ? - person David C; 18.06.2014
comment
Я думаю, что для этого можно использовать after-filter в контроллере, который будет регистрировать весь ответ, и там вы уже можете получить доступ к заголовкам. - person uno_ordinary; 19.06.2014