Недавно я перенес свой проект Функции Azure с .NET 6 In-Process Worker на .NET 8 изолированный Worker и заметил, что мои журналы дублируются при локальном запуске и в Application Insights. Например, когда я регистрирую сообщение с помощью ILogger, одно и то же сообщение появляется в консоли дважды.
Сведения о среде:
Предыдущая настройка: .NET 6, In-Process Worker
Текущая настройка >: .NET 8, изолированный рабочий процесс
Основные инструменты функций Azure: версия 4.x
.NET SDK: версия 8.0.x Шаблон проекта: Изолированный работник
Недавно я перенес свой проект [b]Функции Azure[/b] с [b].NET 6 In-Process Worker[/b] на [b].NET 8 изолированный Worker[/b] и заметил, что мои журналы дублируются при локальном запуске и в Application Insights. Например, когда я регистрирую сообщение с помощью ILogger, одно и то же сообщение появляется в консоли дважды. [h4][b]Сведения о среде[/b]:[/h4][list] [*][b]Предыдущая настройка[/b]: .NET 6, In-Process Worker [*][b]Текущая настройка[/b] >: .NET 8, изолированный рабочий процесс [*][b]Основные инструменты функций Azure[/b]: версия 4.x [*][b].NET SDK[/b]: версия 8.0.x [b]Шаблон проекта[/b]: Изолированный работник [/list] [code]Project.csproj[/code] [code]
services.AddApplicationInsightsTelemetryWorkerService(configuration); services.ConfigureFunctionsApplicationInsights(); [/code] [code]Function1.cs[/code] [code]public PlanningSyncFunction(ILogger logger) { logger.LogDebug("[DEBUG]"); logger.LogInformation("[INFO]"); logger.LogWarning("[WARN]"); logger.LogError("[ERR]"); } [/code] [b]Вывод в консоль[/b] [code][2024-12-12T10:11:35.505Z] Content-Type:application/json;odata=minimalmetadata;streaming=true;charset=utf-8 [2024-12-12T10:11:35.506Z] [2024-12-12T10:11:35.514Z] info: Company.Functions.PlanningSyncFunction[0] [2024-12-12T10:11:35.516Z] [INFO] [2024-12-12T10:11:35.518Z] [INFO] [2024-12-12T10:11:35.522Z] warn: Company.Functions.PlanningSyncFunction[0] [2024-12-12T10:11:35.523Z] [WARN] [2024-12-12T10:11:35.527Z] [WARN] [2024-12-12T10:11:35.529Z] fail: Company.Functions.PlanningSyncFunction[0] [2024-12-12T10:11:35.529Z] [ERR] [2024-12-12T10:11:35.532Z] [ERR] [2024-12-12T10:11:35.560Z] info: Azure.Core[1] [/code] [img]https://i.sstatic.net/bZoDcXnU.png[/img] [h4][b]Вопросы[/b]:[/h4] [list] [*]Почему журналы дублируются после перехода на .NET 8 изолированный рабочий процесс? [*]Это связано с изменениями в настройках по умолчанию поведение ведения журнала изолированного рабочего процесса функций Azure? [*]Как предотвратить дублирование, сохраняя при этом надлежащую функциональность ведения журнала? [/list] Спасибо за помощь!