Project

bearclaws

0.0
No commit activity in last 3 years
No release in over 3 years
Analyze the output of you AWS cost allocation report. Group your costs by an arbitrary tag, like `client`
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

 Project Readme

Bearclaws

Build Status

Code Climate

Analyze the output of you AWS cost allocation report. Group your costs by an arbitrary tag, like client.

Installation

Add this line to your application's Gemfile:

gem 'bearclaws'

And then execute:

$ bundle

Or install it yourself as:

$ gem install bearclaws

CLI Usage

1) Download your cost allocation report from AWS (e.g. 93795-aws-cost-allocation-2013-09.csv)

2) Identify the zero-indexed column in the CSV by which you want to 'group' things. (e.g. 31)

3) Run the analyzer

$ bearclaws 93795-aws-cost-allocation-2013-09.csv 31

4) Examine the results in bearclaws.csv. It will look something like this:

client1
AWSDataTransfer 191.32
AmazonEC2 39.10
AmazonS3 170.29
AmazonSNS 0.00
AmazonRDS 173.07
AmazonETS 3.89
AmazonRoute53 1.01
Total 578.68
client2
AWSDataTransfer 0.00
AmazonEC2 14.40
Total 14.40
client3
AWSDataTransfer 0.01
AmazonEC2 14.40
Total 14.41

CLI Options

-o The name of the CSV output file. Defaults to bearclaws.csv

API Usage

csv    = File.open '93795-aws-cost-allocation-2013-09.csv'
groups = Bearclaws.analyze csv, 31

groups.each do |group|
  puts group.name  # Name of the tag
  puts group.total # Total cost attributed to the tag
  group.subtotals.each do |key, subtotal|
    puts %{#{key} - #{subtotal}}
  end
end

Learn more in the docs