log4net smtp-appender nicht senden von E-Mails

Ich versuche zu implementieren, log4net, um E-Mail senden.

Folgendes ist mein code aber es ist kein Versand von E-Mails.

 <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>

und

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

in der AssemblyInfo.cs

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

und wie erstelle ich das log-Objekt

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

Diese Konfiguration ist in Ordnung, die für die Datei-Ausgabe, d.h. RollingFileAppender aber nicht für SmtpAppender.

N ich habe versucht, viele Lösungen aus dem internet, waren aber nicht wirklich hilfreich.

Bitte zeigen Sie mir die richtigen Richtungen. thankx im Voraus 🙂

  • was ist der SMTP-Einstellungen so Aussehen wie in deiner config-Datei, können Sie zeigen, dass der Anteil der config müssen Sie SMTP.Appender
  • "Keine emails versenden" ist wirklich sehr, sehr vage. Das problem könnte sein, in vielen Orten. Ihr Erster Schritt ist für die Verwendung eines SMTP-host, den Sie kontrollieren können. Dies würde das problem einzugrenzen, ob oder ob nicht es ist die Appen vs. ob oder nicht der SMTP-host ist die Ablehnung der Nachrichten. (Das ist ein sehr großer Unterschied.) Versuchen Sie mit so etwas wie smtp4dev (smtp4dev.codeplex.com) als lokalen SMTP-host zu testen, ob der logger ist zumindest das tun, was Sie denken, es tut.
  • Soweit ich mich erinnere, Gmail unterstützt nur SMTP über eine verschlüsselte Verbindung. Und ich bezweifle, dass plain SMTP-appender kann es aufzubauen.
  • Ich habe gerade getestet meine Antwort mit meinem eigenen gmail-Konto, und es arbeitet mit log4net Appender C# .NET 4.0 VS2010 also nicht sicher, warum meine Antwort nicht helfen. Ich markierte meine Antwort für die Löschung Glück müssen auch sehen, was Ihr code dahinter aussieht, wie in Bezug darauf, wie Sie senden über Ihre Anmeldeinformationen ..
  • Ihr problem auch aussieht, Sie sind nicht immer der richtige name der logger-zum Beispiel var log = LogManager.GetLogger("SMTPAppender"); dann müssen Sie es auch tun, um die Konfiguration zu Lesen log4net.Config.XmlConfigurator.Configure();
  • In meinem Fall, ich brauche, um Allow apps that use less secure sign in zu gmail finden Sie unter stackoverflow.com/a/50733852/4573839

InformationsquelleAutor pirate-eir | 2013-03-20
Schreibe einen Kommentar