fog-openstack icon indicating copy to clipboard operation
fog-openstack copied to clipboard

Cannot get volume usage from metering get_usage / list_usage method

Open desmond132518 opened this issue 8 years ago • 0 comments

I tried to get the usage data from 'metering > get_usage', however, I can only get the instance usage.

My colleague originally used "metering > list_resources" method to grab the event of each volume, then calculate the time diff between start and end, then add them up, like this :

volume_resource_list = @cloud.connection.list_resources.data[:body].select { |i| (i['metadata']['event_type'] || '')[/volume/] }

volume_resource_list.each do |vr|
    if  vr["metadata"]["status"] == "deleting"
      if (Time.parse(vr["last_sample_timestamp"]) < Time.parse(end_day)) && (Time.parse(vr["last_sample_timestamp"]) > Time.parse(start_day))
        if Time.parse(vr["metadata"]["launched_at"]) > Time.parse(start_day)
          usage = Time.parse(vr["last_sample_timestamp"]) - Time.parse(vr["metadata"]["launched_at"])
        else
          usage = Time.parse(vr["last_sample_timestamp"]) - Time.parse(start_day)
        end
      elsif Time.parse(vr["last_sample_timestamp"]) > Time.parse(end_day)
        if (Time.parse(vr["metadata"]["launched_at"]) > Time.parse(start_day)) && (Time.parse(vr["metadata"]["launched_at"]) < Time.parse(end_day))
          usage = Time.parse(end_day) - Time.parse(vr["metadata"]["launched_at"])
        else
          usage = 24 * 3600
        end
      end
    elsif  vr["metadata"]["status"] == "available"
      if (Time.parse(vr["metadata"]["launched_at"]) < Time.parse(end_day)) && (Time.parse(vr["metadata"]["launched_at"]) > Time.parse(start_day))
        usage = Time.parse(end_day) - Time.parse(vr["metadata"]["launched_at"])
      elsif Time.parse(vr["metadata"]["launched_at"]) < Time.parse(start_day)
        usage = 24 * 3600
      end
    end
end

Now it seems the event data is missing, so I am thinking how I can get those data for the updated version. Can anyone help ?

desmond132518 avatar Sep 08 '16 03:09 desmond132518