Мне нужно записать информацию из всех вызовов, успешно или нет, приложения функции в Azure. Сначала я попробовал просто использовать log.LogInformation () и обнаружил, что сообщения пишутся не из всех вызовов функций. Проведя некоторые исследования, я понял, что в сценарии с высокой нагрузкой ios (у меня сценарий с высокой нагрузкой), иногда среда выполнения решает не регистрировать некоторые из успешных вызовов. Справедливо.
Затем я попытался использовать настраиваемые события для ведения журнала и получения необходимой информации:
TelemetryConfiguration config = TelemetryConfiguration.CreateDefault();
TelemetryClient tc = new TelemetryClient(config);
Dictionary<string, string> props = new Dictionary<string, string>();
props["msgid"] = msgid;
tc.TrackEvent("MsgToBenefitsService", props);
Все еще не повезло, в некоторых запусках я видел только 82 строки в обзорах приложений из 1000 вызовов. Я не смог найти никакой документации, в которой говорилось бы, что пользовательские события могут не регистрироваться, поэтому я ожидал увидеть 1000 событий, зарегистрированных для 1000 вызовов.
Что-то не так с кодом регистрации выше? И есть ли варианты, чтобы гарантировать, что я могу записать информацию из вызова в AppInsights? Или я застрял с необходимостью явно войти в себя из приложения функции?
В качестве фона у этого функционального приложения есть триггер служебной шины для чтения сообщений из topi c. Я использую v3 времени выполнения.
Любая помощь будет оценена.
Спасибо.