Утечка памяти в сервисе Net windows с Serilog - PullRequest
0 голосов
/ 01 августа 2020

Мне нужна помощь в устранении этой проблемы с утечкой памяти.

Я запускаю службу. Net windows (. net 4.6.1) с Serilog для ведения журнала. Я использую диспетчер пакетов NuGet Serilog.Logentries для записи в приемник журналов (с использованием последней версии).

Для каждого важного класса создаются отдельные средства ведения журнала, эти экземпляры хранятся в памяти в течение всего срока службы приложения.

Приложение аварийно завершает работу после 4-6 дней работы из-за исключения нехватки памяти. Для этого я запустил профилировщик ANT и вижу, что большая часть памяти занята типами Byte и String.

  1. Большая часть байтовой памяти принадлежит System. Net. Security._sslStream , и он продолжает расти. enter image description here

  2. Most of the String memory is held by Serilog.Parsing.PropertyToken and Serilog.Sinks.LogentriesSink class, and it keeps growing.

введите описание изображения здесь

Я не могу понять, что происходит, и не знаю, где именно искать. Будет полезно, если кто-нибудь укажет мне правильное направление.

...