-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New billing cloud #64
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some things I found while looking at this
@@ -17,7 +17,6 @@ See the [component documentation](https://hub.syn.tools/billing-collector-clouds | |||
## Getting started for developers | |||
|
|||
In order to run this tool, you need | |||
* An instance of the billing database |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess we would need some Odoo16 endpoint somewhere?
But on the other hand we could probably have a small go tool that would just print all JSON that get posted to it to act as a mock endpoint.
7ddb29b
to
4fb4f61
Compare
4322919
to
fcd0672
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, just a few comments that still say billing database and some ideas for the future
collectInterval = 23 | ||
} | ||
|
||
wg.Add(1) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just an idea for the future: we could change this to a select
statement and use tickers. This way we could also integrate proper kill signal handling to exit the loop.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please fixup your f
commits.
The rest LGTM.
d3dc9e6
to
d654495
Compare
This commit removes any integration with the billing database. The metrics will be provided via an exporter. This integrates more nicely with the rest of the billing system. Metrics that are provided once a day, like for object storage, are only scraped after a specified time. Then the value will be divided by the rest of hours for the given day. Exoscale DBaaS metrics are provided as is. The metrics exported have the name `appcat:raw:billing` as they can't be used directly for the billing. A set of prometheus rules will do some aggregation and properly export them as `appcat:billing`. These rules are part of the component and not included in this commit.
42398b8
to
44b9cd6
Compare
Signed-off-by: Nicolas Bigler <[email protected]>
Signed-off-by: Nicolas Bigler <[email protected]>
0ce3089
to
aa031d8
Compare
Signed-off-by: Nicolas Bigler <[email protected]>
92af2ee
to
16133f2
Compare
Signed-off-by: Nicolas Bigler <[email protected]>
Signed-off-by: Nicolas Bigler <[email protected]>
16133f2
to
5f447cd
Compare
155fd38
to
f918e63
Compare
Signed-off-by: Nicolas Bigler <[email protected]>
Signed-off-by: Nicolas Bigler <[email protected]>
d710e80
to
066d295
Compare
Summary
This PR changes the way we bill our cloud services.
Instead of writing our billing metrics to a billing database, we now export the billing metrics directly into our Odoo.
Checklist
changelog.
The PR has a meaningful description that sums up the change. It will be
linked in the changelog.
bug
,enhancement
,documentation
,change
,breaking
,dependency
as they show up in the changelog.