class Azure::Armrest::Billing::UsageService
Public Class Methods
new(configuration, options = {})
click to toggle source
Creates and returns a new UsageService
object.
Calls superclass method
Azure::Armrest::ArmrestService::new
# File lib/azure/armrest/billing/usage_service.rb, line 7 def initialize(configuration, options = {}) options = options.merge('api_version' => '2015-06-01-preview') super(configuration, 'subscriptions', 'Microsoft.Commerce', options) end
Public Instance Methods
list(options = {})
click to toggle source
List usage details. The options
hash may include the following filters:
:reportedStartTime # e.g. 2016-05-30T00:00:00Z. Mandatory. :reportedEndTime # e.g. 2016-06-01T00:00:00Z. Mandatory. :aggregationGranularity # Either 'Daily' or 'Hourly'. Default is Daily. :showDetails # Either true or false. Default is true. :continuationToken # Token received from previous call. No default.
You may also pass ‘:all => true’ to retrieve all records instead of dealing with continuation tokens yourself. By default Azure
will only return the first 1000 records.
The :reportedStartTime and :reportedEndTime values should be in UTC + iso8601 format. For “Daily” aggregation, the time should be set to midnight. For “Hourly” aggregation, only the hour should be set, with minutes and seconds set to “00”.
Example:
require 'azure-armrest' require 'time' conf = Azure::Armrest::Configuration.new(<your_credentials>) bill = Azure::Armrest::Billing::UsageService.new(conf) options = { :reportedStartTime => Time.new(2016,10,1,0,0,0,0).utc.iso8601, :reportedEndTime => Time.new(2016,10,31,0,0,0,0).utc.iso8601, :showDetails => true, :aggregationGranularity => 'Daily', :all => true } list = bill.list(options)
# File lib/azure/armrest/billing/usage_service.rb, line 48 def list(options = {}) url = build_url(options) response = rest_get(url) if options[:all] get_all_results(response) else Azure::Armrest::ArmrestCollection.create_from_response(response, Azure::Armrest::Billing::Usage) end end
Private Instance Methods
build_url(options = {})
click to toggle source
# File lib/azure/armrest/billing/usage_service.rb, line 61 def build_url(options = {}) url = File.join(base_url, 'providers', @provider, 'UsageAggregates') url << "?api-version=#{@api_version}" options.each do |key, value| url << "&#{key}=#{value}" end url end