У меня проблемы с работой моего приложения SMTP:
У меня есть следующие настройки файла конфигурации:
<log4net>
<appender name="LogFileAppender" type="log4net.Appender.FileAppender">
<param name="File" value="folder\\filelog.log"/>
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c %m%n"/>
</layout>
</appender>
<appender name="SmtpAppender" type="log4net.Appender.SmtpAppender">
<to value="xxx@mail.com" />
<from value="xxx@mail.com" />
<subject value="Error in site" />
<smtpHost value="111.111.111.111" />
<authentication value="1"/>
<username Value="user@name.co.uk" />
<password value="password" />
<port value="25" />
<bufferSize value="1" />
<lossy value="false" />
<threshold value="ALL"/>
<evaluator type="log4net.Core.LevelEvaluator">
<threshold value="ALL"/>
</evaluator>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%newline%date [%thread] %-5level %logger [%property] - %message%newline%newline%newline" />
</layout>
</appender>
<logger name="File">
<level value="All" />
<appender-ref ref="LogFileAppender" />
</logger>
<logger name="EmailAppender">
<level value="ALL" />
<appender-ref ref="SmtpAppender" />
</logger>
Я пытаюсь зарегистрировать ОШИБКУ, чтобы увидеть, получаю ли я электронное письмо:
log4net.Config.XmlConfigurator.Configure();
ILog logger = LogManager.GetLogger("EmailAppender");
logger.Error("uyyy: " + DateTime.Now.ToLongDateString());
Электронная почта не приходит.
Если я переключаюсь на «Файл», он регистрируется правильно.
Я знаю, что введенные мной учетные данные верны, поскольку я использую их в других местах системы без проблем.
РЕДАКТИРОВАТЬ: я попытался запустить с моей выше "скрытой" конфигурации, и потребовалось некоторое время, чтобы запустить logger.Error строку, прежде чем продолжить. С моими реальными деталями, он работает сразу, без задержки.