Почему вы не можете просто использовать это:
Следующие шаблоны PatternLayout извлекают информацию о местоположении:
% F Используется для вывода имени файла, в который был отправлен запрос на регистрацию
% L Используется для вывода номера строки, с которой был отправлен запрос на регистрацию.
выдан
% M Используется для вывода имени метода, в котором был отправлен запрос на регистрацию
% C Используется для вывода полного имени класса вызывающей стороны, выдающей
запрос регистрации.
Обратите внимание, что в обоих случаях требуется обход стека, который стоит дорого.
<appender name="DebugOut"
type="log4net.Appender.OutputDebugStringAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%-5p [%t] %C{1}.%M - %m%n" />
</layout>