Код результата функции Azure TimerTrigger в Application Insights всегда успешен - PullRequest
0 голосов
/ 31 января 2019

У меня есть простая функция C # Azure, использующая триггер таймера для запуска каждые X минут.Нет привязки к выходу.

В понимании приложения функция всегда находится в success с кодом результата из 0:

Here

[Несмотря на то, что несколько раз вызывал .Error () TraceWriter.]

Мне бы хотелось получить правильный окончательный статус в аналитических материалах приложения, но я не понимаю, как это сделать.Документация никогда не говорит об этом: - / Может кто-нибудь подсказать мне, как это сделать в C #?

Я пытался установить Environment.ExiCode, но тот же результат.Я также попытался изменить тип возвращаемого значения на int, но тогда функция больше не вызывается.Я полагаю, потому что это способ объявить выходную привязку для самой функции Azure.

Вот моя функция:

[FunctionName("SendToOfflineArchive")]
public static void Run([TimerTrigger("%TimerInterval%")]TimerInfo myTimer, TraceWriter log)
{
    log.Info($"C# Timer trigger function executed at: {DateTime.Now}");

    // do stuff

    int nbErrors = 7;
    //return nbErrors;
}

Было бы здорово иметькод результата, отличный от 0 ... Как и количество ошибок (целое число).

1 Ответ

0 голосов
/ 01 февраля 2019

Функция Azure считается сбойной, если она вызвала исключение (имеется встроенная интеграция между AF и AI, и она считает успешно выполненную функцию "успешной").Ведение журнала ошибок в виде трассировки должно привести к соответствующему сообщению трассировки в Application Insights, если включена пересылка журналов.

...