I have a pretty fatal problem with an Azure Functions app.
The app uses Linux and consists of several functions with a GET HTTP trigger and several with a POST HTTP trigger. The functions are written in Python. The GET methods have authLevel anonymous
, the POST methods have admin
.
Problem
We tried to use some of the POST methods earlier and got code 500 in return.
Diagnosis
I manage the function app in Visual Studio Code, and this is what I saw there:
It looked just like this for every single POST method, but for none of the GET methods.
The log streams for the POST methods are completely empty, even when I try executing them, while the logs for the GET methods show the requests. The requests also weren't shown in the "Function Execution Count" metric, so I'm sure that they simply never reached the actual function.
The log stream for the function app itself shows these entries over and over, about every 5 seconds:
2020-11-16T17:46:57Z [Verbose] Host instance '0000000000000000000000005A9F8DB5' failed to acquire host lock lease: Microsoft.Azure.Storage.Common: Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature.
2020-11-16T17:46:58Z [Verbose] Host instance '000000000000000000000000555B32F8' failed to acquire host lock lease: Microsoft.Azure.Storage.Common: Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature.
I have no idea if this is connected to my issue with the POST methods.
Attempted solutions
I tried simply redeploying the functions. That was possible and afterwards the POST functions were usable for a little while, until exactly the same situation occurred again. Then, after waiting for a bit and not doing anything, when I checked again, they were available again.
Any suggestions how I might go about resolving this issue, or any idea what the reason for this might be?