Log4Net param из свойств без программирования - PullRequest
0 голосов
/ 25 апреля 2018

Я попытался настроить мой Log4Net динамически.Но некоторые свойства в моих Appenders не будут работать.

То есть в моем Program.cs

GlobalContext.Properties["hostname"] = Environment.MachineName;
GlobalContext.Properties["serviceName"] = ServiceProperties.ServiceName;
GlobalContext.Properties["smtpHost"] = LoggingProperties.SMTPServer;
GlobalContext.Properties["maximumFileSize"] = LoggingProperties.MaximumFileSize;
log4net.Config.XmlConfigurator.Configure();
log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
log.Debug("Logger configured.");
log.Fatal("I am a Mail"); // Mail Logging Test

И часть моего app.config

<appender name="SmtpAppender" type="log4net.Appender.SmtpAppender">
    <param name="smtpHost" value="%property{smtpHost}" />
    <evaluator type="log4net.Core.LevelEvaluator">
      <threshold value="FATAL"/>
    </evaluator>
    ....
</appender>

В моем SmtpAppender, он буквально говорит "% property {smtpHost}" как и String, то же самое с любым другим свойством.

Могу ли я использовать свойства в моей конфигурации без программной установки всего или мне нужно кодировать весь appenders?

С уважением

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...