Как получить идентификатор операции приложения-функции Azure в моем коде .netcore

Я создал приложение-функцию Azure .netcore 2.0 для Linux. Могу ли я получить в своем коде идентификатор операции, указанный ниже. Это нам нужно для отслеживания. При регистрации исключения мы также хотим включить этот идентификатор операции в мой основной код .net. введите здесь описание изображения


person dotnetavalanche    schedule 08.04.2019    source источник
comment
AFAIK - идентификатор операции будет автоматически добавлен в исключения из того же контекста операции. Application Insights уже позаботится об этом за вас. Если вы действительно хотите получить к нему доступ для любой настраиваемой телеметрии, которую хотите написать, вам следует посмотреть, как работают TelemetryInitializer и TelemetryProcessor. docs.microsoft.com/en-us/ лазурный / лазурный-монитор / приложение /   -  person Hiral Desai    schedule 09.04.2019


Ответы (2)


Мне удалось получить InvocationId, добавив ExecutionContext к параметрам моей функции:

public static class Function1
{
    [FunctionName("Function1")]
    public static void Run([TimerTrigger("0 */1 * * * *")]TimerInfo myTimer, ILogger log, ExecutionContext context)
    {
        log.LogInformation($"C# Timer trigger function executed at: {DateTime.Now}");
    }
}

введите здесь описание изображения

person SamaraSoucy    schedule 12.04.2019
comment
как создать собственный invocationid и отправить его из функции azure в AI? - person Alex Gordon; 11.10.2019

Похоже, это System.Diagnostics.Activity.Current?.RootId.

С этим связаны некоторые ошибки, см. https://github.com/Azure/azure-functions-host/issues/5014

person Leonid K    schedule 11.01.2021