The Abacus usage metering and aggregation service.
- Scoped organization ids (e.g. per deployment, region, zone etc)
- Optionally replay unprocessed usage after a restart
- Accurate floating point calculations using BigNumber.js
- Fix remaining timing and event sequencing issues in tests
- Several small/medium/large deployment config options
- Prototype of a BOSH release for Abacus
- Japanese translation
- Performance optimizations, latency and memory footprint
- Node.js 0.12, 4.2, 5.0
- CouchDB 1.6+ compatible database
- Cloud Foundry v210+
- Accept and record duplicate usage docs
- Fix issue with db partitioning in provisioning service
- Fix timing and event sequencing issues in tests
- Fix detection of duplicate usage docs with multiple consumers
- App health checks based on error rates
- Optional registration in Eureka for monitoring with Hystrix
- Support easier app environment configuration with .rc files
- Node.js 0.12, 4.2
- CouchDB 1.6 compatible database
- Cloud Foundry v210+
- Change consumer field type to a string
- Improve error reporting
- Store provider client id with submitted usage
- Bug fixes with usage accumulation and slack windows
- Improve reliability of duplicate usage doc detection
- Fix handling of undefined usage values
- Improvements to make test logic independent of timing
- Throttle usage submission at startup time
- Pass Abacus token instead of client token to resource config service
- Add a test UAA stub service allowing all tests to run with security
- Use more consistent config variable names
- Faster duplicate usage doc detection
- Reduced number of database writes per usage doc
- Fixed Node.js IO starvation issues under load
- More flexible database name configuration
- More flexible database partitioning configuration
- Node.js 0.10, 0.12, 4.2
- CouchDB 1.6 compatible database
- Cloud Foundry v210+
- Simpler and more consistent usage submission API
- Single usage model for runtime and service resources
- Pluggable usage validation
- Usage accumulation over month, day, hour, min, sec time windows
- Configurable accumulation functions
- Automatic calculation of time-based usage consumption
- Handling of out of sequence and delayed usage
- Usage aggregation over orgs, spaces, resources, consumers and apps
- Configurable aggregation functions
- Rating of aggregated usage
- Configurable pricing and rating functions
- Simpler and more consistent usage reporting API
- Default usage summary reports
- Configurable summary and charge calculation functions
- GraphQL usage query API
- Pluggable resource provider and resource configuration onboarding
- Pluggable org collection management
- Authentication using OAuth tokens
- Usage submission authorization using OAuth scopes
- Pluggable usage reporting authorization
- CF app usage bridge to Abacus
- Improvements to the API doc
- FAQ with a few initial questions
- Support for usage region info
- Performance improvements
- DB error handling improvements
- Increased test coverage
- Integration and performance tests
- Node.js 0.10, 0.12, 4.2
- CouchDB 1.6 compatible database
- Cloud Foundry v210+
Initial public contribution