Skip to content

feat: add CloudAMQP cost monitoring plugin#82

Open
demo112 wants to merge 1 commit into
opencost:mainfrom
demo112:cloudamqp-plugin
Open

feat: add CloudAMQP cost monitoring plugin#82
demo112 wants to merge 1 commit into
opencost:mainfrom
demo112:cloudamqp-plugin

Conversation

@demo112
Copy link
Copy Markdown

@demo112 demo112 commented May 14, 2026

CloudAMQP Plugin for OpenCost

Implements a cost monitoring plugin for CloudAMQP managed RabbitMQ services.

What it does

  • Fetches billing invoices from the CloudAMQP API
  • Enriches cost data with instance metadata (region, plan, name)
  • Supports configurable rate limiting for API calls
  • Implements the CustomCostSource interface following the FOCUS spec
  • Includes unit tests for core functionality

Plugin Structure

pkg/plugins/cloudamqp/
├── cmd/main/main.go          # Main plugin implementation
├── cmd/main/main_test.go     # Unit tests
├── cloudamqpplugin/config.go # Configuration handling
├── cloudamqpplugin/types.go  # API response types
├── go.mod / go.sum           # Module dependencies

Configuration

The plugin requires the following config values:

  • cloudamqp_api_key: CloudAMQP API key
  • cloudamqp_account_id: CloudAMQP account ID

Testing

cd pkg/plugins/cloudamqp
go test ./cmd/main/

Related Issue

Resolves #54

Bounty

This plugin qualifies for the OpenCost plugin bounty program ($1,000 per accepted plugin as documented at https://www.opencost.io/blog/introducing-opencost-plugins).

Implements the CloudAMQP plugin for OpenCost, enabling cost monitoring
for CloudAMQP RabbitMQ managed services.

Features:
- Fetches billing invoices from CloudAMQP API
- Enriches cost data with instance metadata (region, plan)
- Supports rate limiting for API calls
- Implements CustomCostSource interface
- Includes unit tests

Resolves opencost#54

Bounty: This plugin qualifies for the ,000 OpenCost bounty program.
Payment method question pending in issue opencost#42.

Signed-off-by: demo112 <demo112@users.noreply.github.com>
@demo112 demo112 force-pushed the cloudamqp-plugin branch from 4e3cd89 to a6d230a Compare May 14, 2026 00:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Cloudamqp Plugin

1 participant