У меня есть приложение-функция (среда выполнения V4) с триггером EventHub, созданным в VS 2022 на C# и развернутым в Azure. Я настроил статистику приложений, поэтому могу войти в нее из кода.
Я вижу, что в таблицу трассировок записываются предупреждения и сообщения об ошибках, но не информация или сообщения трассировки, используя KQL. такой запрос:
Код: Выделить всё
traces
| where timestamp > ago(60min)
| order by timestamp desc
Код: Выделить всё
_logger.Log(LogLevel.Information, $"(LOG) Received event count = {events.Length}");
_logger.LogInformation($"(INFO) Received event count = {events.Length}");
_logger.LogWarning($"(WARN) Received event count = {events.Length}");
_logger.LogError($"(ERR) Received event count = {events.Length}");
_logger.LogTrace($"(TRACE) Received event count = {events.Length}");
Я пробовал множество настроек в файле host.json, но не могу получите это, чтобы отображать информационные сообщения.
По этому: https://learn.microsoft.com/en-us/azure ... ng?tabs=v2# configure-categories
В разделе «loglevel» в host.json я попробовал «Function.myfunc.User»: «Информация». Я попробовал «Функция»: «Информация». , "Function.myfunc":"Информация" всё безрезультатно. (Здесь я использую myfunc, но в файле host.json указано имя функции). Я предполагаю, что мне следует использовать имя атрибута Function(), а не фактическое имя функции «приложение». И да, я проверил, что оно точно соответствует регистру имени функции.
Я пробовал с "default":"Information" и без него, но все равно не работает.
По этому поводу: Ведение журнала Azure Function Application Insights не учитывает конфигурацию Host.json
В нем говорится, что нужно удалить фильтры по умолчанию, но у меня там нет фильтра по умолчанию.
Очевидно, что соединение с App Insights работает, поскольку я получаю некоторые сообщения.
Обратите внимание: если я запущу это в отладчике, я получу все сообщения экран консоли, как и ожидалось.
Кроме того, это приложение с очень небольшим объемом (распределено 5000 элементов в день), поэтому производительность здесь не является проблемой.
Если есть более простой способ ведения журнала, я открыт для предложений.
ОБНОВЛЕНО Вот мой полный файл host.json, и я все еще получаю только предупреждения и ошибки:
Код: Выделить всё
{
"version": "2.0",
"logging": {
"LogLevel": {
"Default": "Warning"
},
"ApplicationInsights": {
"LogLevel": {
"Default": "Information"
}
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/788 ... traces-log