Как прочитать расширение Microsoft Logger высокого использования памяти из дампа - PullRequest
0 голосов
/ 19 сентября 2018

Мой .NET Core 2 API, работающий в службе приложений, постоянно увеличивает использование памяти.Подойдя к точке, служба приложения перестает работать, и нам нужно ее перезапустить.В прошлый раз я сделал дамп памяти в Kudu и открыл его в VS2017.

Я новичок в анализе этого файла, но, сортируя по Inclusive Size, почти все объекты журналирования требуют много оперативной памяти.См. Прикрепленный экран печати:

High memory usage

Я думаю, что каким-то образом эти ресурсы не используются.Пример конфигурации моего Autofac-контейнера приведен ниже:

    var assemblies = new Assembly[]
    {
        Assembly.Load("....")

    };

    builder.RegisterAssemblyTypes(assemblies)
        .Where(t => !t.Name.EndsWith("CachedRepository") && !t.Name.EndsWith("DbCachedRepository"))
        .AsImplementedInterfaces()
        .InstancePerBackgroundJob() // Dispose after Hangfire job
        .InstancePerLifetimeScope(); // Dispose after http request

Как я могу контролировать удаление объектов Logger?

Большое спасибо заранее.

1 Ответ

0 голосов
/ 11 октября 2018

Проблема была решена путем чтения ссылки, предоставленной Дэвидом Фаулом.Это проблема github с известной проблемой ведения журнала Azure.См. https://github.com/aspnet/Logging/issues/821.

После отключения Blob Logger все было решено.

...