Журнал функций Azure всегда равен нулю - PullRequest
0 голосов
/ 04 марта 2019

Я создал приложение функций Azure для .NET Core в Visual Studio 2017. Я использую простой пример Hello, {name} , который автоматически создается шаблоном проекта функций Azure.

public static class Function1
{
    [FunctionName("Function1")]
    public static async Task<IActionResult> Run(
        [HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req,
        ILogger log)
    {
        log.LogInformation("C# HTTP trigger function processed a request.");
        log.LogDebug("A debug message");

        string name = req.Query["name"];

        string requestBody = await new StreamReader(req.Body).ReadToEndAsync();
        dynamic data = JsonConvert.DeserializeObject(requestBody);
        name = name ?? data?.name;

        return name != null
            ? (ActionResult)new OkObjectResult($"Hello, {name}")
            : new BadRequestObjectResult("Please pass a name on the query string or in the request body");
    }
}

Когда я развертываю ее в Azure, запускаю функцию и затем просматриваю детали вызова в Kudu, журнал всегда имеет значение null.

Kudu Invocation Details

Нажатие кнопки Toggle Output не загружает журнал.Он зависает в состоянии «Загрузка» на неопределенное время.

Как просмотреть вывод журнала для функции Azure?

1 Ответ

0 голосов
/ 04 марта 2019

Для функций v2 во время выполнения 2.x doc объясняет

Для улучшения мониторинга панель мониторинга WebJobs на портале, в которой использовался параметр AzureWebJobsDashboard, заменяется наAzure Application Insights, в котором используется параметр APPINSIGHTS_INSTRUMENTATIONKEY.

Как и в случае с настройкой AzureWebJobsDashboard, параметр журнала равен нулю, и в нем нет журнала.Я боюсь, что замена на была применена, и Dashboard устарела .

После создания Application Insight и добавления его instrumentationkey в настройках приложения мы могли видеть, что представление Monitor похоже на Dashboard..

enter image description here

Если нам все равно это не понравится, логи в куду (https://<functionAppName>.scm.azurewebsites.net/DebugConsole) уже готовы (D:\home\LogFiles\Application\Functions\function\<functoinName>).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...