Subledger instance accountant Ruby gem
Installation:
gem install instance_accountant
Gemfile:
gem 'instance_accountant'
The gem provides an executable that can be invoked two ways:
-
you want to account for the hourly cost of instances:
#!/bin/bash
instance_accountant account
--cost 0.1
--cost_reference 'http://test.com/cost'
--expense_acct subledger_account_id
--payable_acct subledger_account_id
--key_id subledger_key_id
--secret subledger_secret
--org_id subledger_org_id
--book_id subledger_book_id
--daemon 2>&1 >> instance_accountant.log -
you want to account for both the hourly cost and income:
#!/bin/bash
instance_accountant account
--cost 0.1
--expense_acct subledger_account_id
--payable_acct subledger_account_id
--price 0.2
--receivable_acct subledger_account_id
--income_acct subledger_account_id
--key_id subledger_key_id
--secret subledger_secret
--org_id subledger_org_id
--book_id subledger_book_id
--daemon 2>&1 >> instance_accountant.log
Here's a complete set of options:
Options:
f, [--filepath=FILEPATH]
# Default: ~/.instance_accountant
d, --description=DESCRIPTION
# Default: instance usage for: %
[--reference=REFERENCE]
c, --cost=COST
[--cost-description=COST_DESCRIPTION]
# Default: instance cost for: %
[--cost-reference=COST_REFERENCE]
e, --expense-acct=EXPENSE_ACCT
p, --payable-acct=PAYABLE_ACCT
p, [--price=PRICE]
[--price-description=PRICE_DESCRIPTION]
# Default: instance price for %
[--price-reference=PRICE_REFERENCE]
i, [--income-acct=INCOME_ACCT]
r, [--receivable-acct=RECEIVABLE_ACCT]
k, --key-id=KEY_ID
s, --secret=SECRET
o, --org-id=ORG_ID
b, --book-id=BOOK_ID
[--daemon], [--no-daemon]
Note: %s in descriptions will be replaced by the ISO 8601 of the hour in UTC Note: instance_accountant captures errors and does its best to keep running