I wonder if one of the things that keeps some developers from constantly playing with shiny cloud technologies is a nagging concern that they’ll accidentally ring up a life-altering usage bill. We’ve probably all heard horror stories of someone who accidentally left an Azure web application running for a long time or kept an Amazon AWS EC2 image online for a month and were shocked by the eventual charges. What do I want? I want a way to define a cost threshold for my cloud usage and have the provider email me as soon as I reach that value.
Ideally, I’d love a way to set up a complex condition based on various sub-services or types of charges. For instance, If bandwidth exceeds X, or Azure AppFabric exceeds Y, then send me an SMS message. But I’m easy, I’d be thrilled if Microsoft emailed me the minute I spent more than $20 on anything related to Azure. Can this be that hard? I would think that cloud providers are constantly accruing my usage (bandwidth, compute cycles, storage) and could use an event driven architecture to send off events for computation at regular intervals.
If I’m being greedy, I want this for ANY variable-usage bill in my life. If you got an email during the summer from your electric company that said “Hey Frosty, you might want to turn off the air conditioner since it’s ten days into the billing cycle and you’ve already rung up a bill equal to last month’s total”, wouldn’t you alter your behavior? Why are most providers stuck in a classic BI model (find out things whenever reports are run) vs. a more event-driven model? Surprise bills should be a thing of the past.
Are you familiar with any providers who let you set charge limits or proactively send notifications? Let’s make this happen, please.
Totally agree.I think a good way would have been to be able to have a server in “Developer mode”, whrere everything would be gone after 2-3 hours.
In addtiona to a defined usage theshold, you could have a “past usage characteristics” alert. Eg: “in the past 12 months Richard has been averaging about $100/month, but in the past two days he’s racked up $200, let’s alert him”
Yes, Brian, that’d be part of the intelligent processing that I’d love to see. Take into account historical usage, raise the threshold if I sign up for more services with the provider, etc.
I’m afraid they’re just not interested.
But big bills are meat and potatoes to businesses.
Together with this form of warning, you also need a marketing campaign (expensive) to tell people what you’re doing and attract more users to your service and so alleviate the reduction in revenue.
And incidentally, my bank does this (emails when account balance gets low), my cell provider does (emails when usage goes over plan, suggesting an upgrade), my water co and electic company compares my usage with past years (bit late to change my immediate behavior, though) so this is coming. Just keep asking…
How about a cap rather than an alert? “I don’t want to spend more than $X a month.”
Google AppEngine does this already
There is a tool that tells us if we have an active deployment in Azure. Useful for not paying for demos or POCs that we forget to delete.
Nice idea, Mark. Thanks for sharing.