Журнал 4Net Журнал для указания c Appender. NET Core - PullRequest
0 голосов
/ 18 февраля 2020

Использование. NET Ядро, C#, Журнал 4Net 2.0.8

Я пытаюсь войти в разные Appenders, но по какой-то причине нет журнала 4net .LogManager.GetLogger (строка), есть только журнал 4net .LogManager.GetLogger (тип).

Я взял пример из: Журнал 4net - Вход в неправильный аппендир

Я могу sh войти в систему из одного класса:

private static readonly ILog logA = LogManager.GetLogger("LogA");
log.Debug("This should log to LogA");

И в другом другом классе:

private static readonly ILog logB = LogManager.GetLogger("LogB");
log.Debug("This should log to LogB");

Я попытался понять журнал 4Net после https://logging.apache.org/log4net/release/manual/introduction.html

Но пример также относится к:

ILog x = LogManager.GetLogger("wombat");
ILog y = LogManager.GetLogger("wombat");

Как войти в систему, указав c Appenders? Спасибо

1 Ответ

1 голос
/ 18 февраля 2020

Вам потребуется использовать перегрузку GetLogger(Assembly repositoryAssembly, string name), см. spe c.

Необходимо передать аргумент assembly, например, Assembly.GetExecutingAssembly() .

(Обратите внимание, что при этом регистрируется указанный c регистратор, а не appender, что вы и пытаетесь сделать.)

Пример:

ILog logger = LogManager .GetLogger(Assembly.GetExecutingAssembly(), "LogB");
...