Log4net smtp appender does not send emails

I am trying to implement log4net to send email.
Below is my code, but it does not send emails.

<appender name="SmtpAppender" type="log4net.Appender.SmtpAppender"> <to value="...." /> <from value="..." /> <subject value="Logging Message" /> <smtpHost value="smtp.gmail.com" /> <port value="465"/> <authentication value="Basic" /> <username value="..."/> <password value="..."/> <EnableSsl value="true" /> <bufferSize value="1" /> <lossy value="true" /> <evaluator type="log4net.Core.LevelEvaluator"> <threshold value="WARN"/> </evaluator> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%date [%thread] %level %logger - %message%newline%exception" /> </layout> </appender> 

and

 <root> <level value="WARN" /> <appender-ref ref="SmtpAppender" /> </root> 

in AssemblyInfo.cs

  [assembly: log4net.Config.XmlConfiguratorAttribute(Watch = true)] 

and that I create a log object

  private static readonly log4net.ILog log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); 

This configuration works fine for file output, i.e. RollingFileAppender, but not for SmtpAppender.

N I tried many solutions from the Internet, but didn’t help much.

Please show me the correct directions. thankx in advance :)

+8
c # log4net smtpappender
source share
3 answers

I use a very similar SMTP messaging app for Gmail, but in my case I use a different port:

 <port value="587"/> 

All other settings are the same, so try and see if this works for you. It uses the Gmail port for TLS specified here .

+6
source share

See my working example. If you use two-factor authentication with GMail, remember to create a password and use it here:

 <appender name="SmtpAppender" type="log4net.Appender.SmtpAppender"> <to value="****" /> <from value="****" /> <subject value="Crash log" /> <smtpHost value="smtp.gmail.com" /> <authentication value="Basic" /> <port value="587" /> <username value="****" /> <password value="****" /> <bufferSize value="10" /> <EnableSsl value="true"/> <lossy value="true" /> <threshold value="DEBUG" /> <evaluator type="log4net.Core.LevelEvaluator"> <threshold value="WARN"/> </evaluator> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%date{dd/MM/yyyy hh:mm:ss.fff}&#9;%-5level&#9;%-15logger&#9;%message%newline" /> </layout> </appender> 

Hope this helps.

0
source share

For those facing issues with SmtpAppender, I would recommend including the following in your appSettings node.

 <appSettings> <add key="log4net.Internal.Debug" value="true"/> </appSettings> 

Then it will output a diagnostic like this below to point you in the right direction

 log4net: Setting Property [From] to String value [tomas@kodi.is] log4net: Setting Property [Subject] to String value [Kodiak OMS Shortcode service] log4net: Setting Property [SmtpHost] to String value [mail.sip.is] log4net: Setting Property [Port] to Int32 value [25] log4net: Setting Property [BufferSize] to Int32 value [1] log4net: Setting Property [EnableSsl] to Boolean value [True] log4net: Setting Property [Threshold] to Level value [DEBUG] log4net: Setting Property [Lossy] to Boolean value [False] log4net: Converter [message] Option [] Format [min=-1,max=2147483647,leftAlign=False] log4net: Converter [newline] Option [] Format [min=-1,max=2147483647,leftAlign=False] log4net: Setting Property [ConversionPattern] to String value [%utcdate [%level] - %message%newline%exception] log4net: Converter [utcdate] Option [] Format [min=-1,max=2147483647,leftAlign=False] log4net: Converter [literal] Option [ [] Format [min=-1,max=2147483647,leftAlign=False] log4net: Converter [level] Option [] Format [min=-1,max=2147483647,leftAlign=False] log4net: Converter [literal] Option [] - ] Format [min=-1,max=2147483647,leftAlign=False] log4net: Converter [message] Option [] Format [min=-1,max=2147483647,leftAlign=False] log4net: Converter [newline] Option [] Format [min=-1,max=2147483647,leftAlign=False] log4net: Converter [exception] Option [] Format [min=-1,max=2147483647,leftAlign=False] log4net: Setting Property [Layout] to object [log4net.Layout.PatternLayout] log4net: Created Appender [EmailLog] log4net: Adding appender named [EmailLog] to logger [EmailLogger]. log4net: Hierarchy Threshold [] log4net:ERROR [SmtpAppender] ErrorCode: GenericFailure. Error occurred while sending e-mail notification. System.Net.Mail.SmtpException: Server does not support secure connections. at System.Net.Mail.SmtpConnection.GetConnection(ServicePoint servicePoint) at System.Net.Mail.SmtpTransport.GetConnection(ServicePoint servicePoint) at System.Net.Mail.SmtpClient.GetConnection() at System.Net.Mail.SmtpClient.Send(MailMessage message) at log4net.Appender.SmtpAppender.SendEmail(String messageBody) at log4net.Appender.SmtpAppender.SendBuffer(LoggingEvent[] events) 
0
source share

All Articles