Один из вариантов - добавить after_filter в application.rb (чтобы он действовал для всех действий) и сделать следующее:
def store_bandwidth_usage
response_size = response.body.size
# Assuming the User model has a bandwidth_usage attribute
@current_user.increment!(:bandwidth_usage, response_size)
end
Конечно, тогда вам понадобится before_filter, который проверяет, что пользователь не превысил выделенную полосу пропускания, в противном случае ему следует запретить доступ.
Имейте в виду, что это будет учитываться только для запросов, попавших на сервер rails, любые запросы, которые выполняются интерфейсным сервером (например, изображениями), не будут включены.