4 ms·
Google does have this feature https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications https://cloud.google.com/billing/docs/how-to/budge
by sandGorgon 6y ago
Google does have this feature https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications https://cloud.google.com/billing/docs/how-to/budgets-program...
Here's the specific example
https://cloud.google.com/billing/docs/how-to/notify#cap_disable_billing_to_stop_usage https://cloud.google.com/billing/docs/how-to/notify#cap_disa...
- lights0123 6y ago> There is a delay of up to a few days between incurring costs and receiving budget notifications. Due to usage latency from the time that a resource is used to the time that the activity is billed, you might incur additional costs for usage that hasn't arrived at the time that all services are stopped. Following the steps in this capping example is not a guarantee that you will not spend more than your budget. This looks like it has the same problems as the post, because it also relies on those budget alerts that can happen a long while after you've exceeded them.
- mgkimsal 6y agoVery late to the post, but this seems like "eventually consistent billing". distributed systems seem to rely on "eventual consistency" but... "eventual consistency" is not what most people want in billing threshold scenarios...
- modeless 6y ago"Following the steps in this capping example is not a guarantee that you will not spend more than your budget." "Resources [...] might be irretrievably deleted." Also it's not automatic, you have to manually write code to do it, and test it, and make sure not to break it. A reasonable implementation of this feature would be built into the console, guarantee a maximum spend, not require writing your own fallible code, and provide an option to preserve storage (at normal cost) so that all your data isn't deleted when your compute/API stuff is shut down.
- deleted 6y ago[deleted]
- asciimike 6y agoExtremely technically, the only GCP product that had this feature was App Engine Standard v1, but looks like it's deprecated as of the end of 2019 (https://cloud.google.com/appengine/docs/managing-costs#changing_or_removing_a_spending_limit https://cloud.google.com/appengine/docs/managing-costs#chang...)
- NegativeLatency 6y agoProbably hurt revenue ;)
- asciimike 6y agoAs a former App Engine PM who spent a lot of time with billing/quotas (though, not the one who deprecated this feature), it's likely due to some combination of: - hard limits caused downtime more often than they prevent these blog posts - hard limits were inconsistently enforced, even within GAE - platform wide quota notifications were implemented (reached "GA"), leaving the question of "how a developer wants to handle this" to the developer, not the platform - maintenance burden The "I bankrupted my startup by running tests in an infinite loop" blog posts happen ~once a year, while the number of customers (including internal teams!) who inadvertently went down because of this quota was staggering. I feel like I used to see one a week, at least. Most often someone on the team was like "oh I'm going to turn this down to zero because we don't want to spend any money during development", never told anyone, and then they go live and they forgot to turn the knob back up (or didn't properly estimate traffic/costs and set it too low). I can tell you it hurts revenue a lot more when a large customer goes down for 15 minutes due to quota issues and their usage drops to zero (both in terms of revenue and customer credibility) vs when tiny developer accidentally blows through 10k in a month and we refund it (since, obviously, the providers cost is a lot less than that).
- daveidol 6y agoI gotta say that seems like a bad reason to remove the feature. If someone intentionally set a hard spend limit - hit it - and their service went down because of it that's not Google's fault. The simple solution for that customer is to just turn off or increase the limit.
- mrtksn 6y agoOP claims that the budgets are not real time, they are eventually accurate but if it happens that you spend too fast you may end up with a larger than your budget sum before anything triggers.
- ggthrowaway2020 6y agoAs a former victim to the same issue as OP, I am furious every time I see a Googler promote that as a solution. In our case, we racked up a $10000 bill on BigQuery in ~6 hours, when a job was failing and auto-retrying. We had set up every alert correctly and our reaction time was about 5 minutes (about $100 of usage, no big deal). So how did we get a $5000 bill? Google's alert was 6 hours late (according to them, this was root-caused to us, because we were submitting jobs continuously). They pointed to their TOS and said they don't guarantee on-time delivery of the alert. I had to write up a blog post with fancy graphs and prepare it for social media before they finally agreed to eat the bill.
- FeistySkink 6y agoIs there a public postmortem anywhere? Your message points to 'no', but just in case.
- dathinab 6y ago(By now) GCP documentation says billing alerts can be late by days. Yes days not just hours. Totally crazy. EDIT: Link (see blue info box a a bit below the anchor on which the page is opened): https://cloud.google.com/billing/docs/how-to/notify#cap_disable_billing_to_stop_usage https://cloud.google.com/billing/docs/how-to/notify#cap_disa...
- donmcronald 6y ago> Recommendation: If you have a hard funds limit, set your maximum budget below your available funds to account for billing delays. But if 1,000,000% lower doesn't work ($7 vs $70k) then...?
- sandGorgon 6y agoP.S. so im not a googler. you misunderstand the intent of this - you basically set this. even if it fails (because messages are delayed), google will refund. This has happened to us before - they do a refund - since you had set the limits correctly. In general, they are not super assholes. I actually dont know a case, where they have refused to refund. AWS is better here - since GCP doesnt have a support dashboard. So the "chasing them" experience is much worse.