У меня довольно фатальная проблема с приложением Azure Functions.
Приложение использует Linux и состоит из нескольких функций с триггером GET HTTP и нескольких функций с триггером POST HTTP. Функции написаны на Python. Методы GET имеют authLevel anonymous
, методы POST имеют admin
.
Проблема
Ранее мы пробовали использовать некоторые методы POST и получили взамен код 500.
Диагностика
Я управляю приложением-функцией в Visual Studio Code, и вот что я там увидел:
Это выглядело точно так же для каждого метода POST, но ни для одного из методов GET.
Потоки журналов для методов POST полностью пусты, даже когда я пытаюсь их выполнить, в то время как журналы для методов GET показывают запросы. Запросы также не отображались в метрике «Счетчик выполнения функций», поэтому я уверен, что они просто так и не достигли фактической функции.
Поток журнала для самого приложения-функции показывает эти записи снова и снова, примерно каждые 5 секунд:
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.
Понятия не имею, связано ли это с моей проблемой с методами POST.
Попытки решения
Я пробовал просто заново развернуть функции. Это было возможно, и впоследствии функции POST можно было использовать некоторое время, пока не повторилась точно такая же ситуация. Затем, немного подождав и ничего не делая, когда я снова проверил, они снова были доступны.
Есть ли предложения, как я могу решить эту проблему, или какие-либо идеи, в чем может быть причина?