У меня есть триггер http с выходной привязкой CosmosDB (sql api), который выдает внутреннюю ошибку сервера 500, когда я выполняю вызов POST для развернутой версии.
public static class Function1
{
[FunctionName("Function1")]
public static async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Function, "post", Route = null)] Request req,
ILogger log, [CosmosDB(
databaseName: "haveThatDB",
collectionName: "Requests",
ConnectionStringSetting = "CosmosDBConnection",CreateIfNotExists =true)] IAsyncCollector<Request> requestOutput
)
{
log.LogInformation("C# HTTP trigger function processed a request.");
await requestOutput.AddAsync(req);
return req != null
? (ActionResult)new OkObjectResult($"Hello, {req.ItemRequested}")
: new BadRequestObjectResult("Please pass a name on the query string or in the request body");
}
}
тот же код отлично работает локально.
в KUDU и на портале не создаются журналы для неудавшихся запросов. если я удалю привязку cosmosDB, она будет работать локально (я вижу, что документ создается) и в развернутом URL-адресе, а также создаются журналы успеха.
Однако однажды я смог увидеть сообщение об ошибке вроде «Ошибка при синтаксическом анализе логического значения. Путь», строка 1, позиция 1. » но после этого я никогда не видел эту проблему в журналах. потому что нет логов в случае 500 внутренней ошибки сервера. активация аналитики приложения также не показывает никаких неудачных попыток выполнить 500 обращений.