Я пытаюсь включить имя метода %method
в сообщения журнала при использовании log4net .Однако, если я смотрю на вывод журнала, он показывает только ?
, где должно быть имя метода.
При чтении документации log4net я знаю, что это доступно только с System.Diagnostics.StackTrace
, и его следует использовать только в разработке, а не в сборках выпуска.
Попытка выполнить эту работу в приложении .NET Core с использованием Microsoft.Extensions.Logging.Log4Net.AspNetCore и вызовом .AddLog4Net();
в Startup
Вот конверсионный паттерн для RollingFileAppender
<conversionPattern value="%date %5level %logger.%method [%line] - MESSAGE: %message%newline %exception" />
Я собрал репозиторий GitHub с голым примером того, что я пытаюсь получить.Если вы запустите проект, вы увидите, что вывод файла журнала не содержит информацию о методе.
Репозиторий доступен по адресу log4net-netcore-example
При просмотре различных статей SO я пока не нашел решения этой проблемы.Я предполагаю, что мне не хватает конфигурации или, возможно, пакета nuget, необходимого для этой работы.
Цените любые идеи, которые кто-либо может предоставить.