class Fog::Radosgw::Usage::Real
Public Class Methods
new(options = {})
click to toggle source
# File lib/fog/radosgw/usage.rb, line 42 def initialize(options = {}) configure_uri_options(options) @radosgw_access_key_id = options[:radosgw_access_key_id] @radosgw_secret_access_key = options[:radosgw_secret_access_key] @connection_options = options[:connection_options] || {} @persistent = options[:persistent] || false end
Public Instance Methods
get_usage(access_key_id, options = {})
click to toggle source
# File lib/fog/radosgw/requests/usage/get_usage.rb, line 16 def get_usage(access_key_id, options = {}) path = "admin/usage" t_now = Fog::Time.now start_time = sanitize_and_convert_time(options[:start_time] || t_now - 86400) end_time = sanitize_and_convert_time(options[:end_time] || t_now) query = "?format=json&start=#{start_time}&end=#{end_time}" params = { :method => 'GET', :path => path, } begin response = Excon.get("#{@scheme}://#{@host}/#{path}#{query}", :headers => signed_headers(params)) if !response.body.empty? case response.headers['Content-Type'] when 'application/json' response.body = Fog::JSON.decode(response.body) end end response rescue Excon::Errors::BadRequest => e raise Fog::Radosgw::Provisioning::ServiceUnavailable.new end end