Azure charging for failed request
I am saving into azure via serverless function. I am using binding that serverless functions provide. I have found the following
- Using binding and saving cost twice as much as saving via a direct path. This is in addition to the cost of running the function. It cost more as it requires more request. However this is not stated
in the documentation and as such should not be the case. The code is Microsoft code and if it is going to cost double, it should be made clear. - When a put request fails due to a Microsoft issue, that is not got anything to do with custom code it is still charged. So a put request to save a file is charged even if the request fails and could not be carried out, that is the file did not get saved.
Examples of request that get charged are as follows
{ StatusCode":429,"ReasonPhrase":"Too Many Requests","valid":false,"trycount":1,"dataid":"43bf252d121a4ed9a746dbef5a7bd8f8","logtime":"2022-10-13T22:49:48.2976152Z","entrytype":"post"}
{"StatusCode":503,"ReasonPhrase":"Service Unavailable","valid":false,"trycount":2,"dataid":"43bf252d121a4ed9a746dbef5a7bd8f8","logtime":"2022-10-13T22:49:52.525285Z","entrytype":"post"}
The charge for failed request result in cost 9 times more than it should. This has resulted for me in bills, that exceed $10000.00 I have put support tickets and after 2 months they think it's ok to charge fail request such as above. The support desk does not seem to understand that a request needs to be carried out, before it can be charged. I have attached details of 5 test I carried out to demonstrate that this is happening. Also attached is the source code. I would appreciate on having the view of the community on this issue.254458-azure-billing-issues.pdf
The source code to reproduce the test I have done can be downloaded at this git location
https://github.com/frankdes/azurebillConsole
Thanks
Frank