Frage

Unsere Web-Anwendung sendet E-Mails. Wir haben viele Benutzer, und wir bekommen viele prallt. Zum Beispiel Benutzer ändern Unternehmen und seine Firma E-Mail ist nicht mehr gültig.

Für Bounces, analysieren ich SMTP-Protokolldatei mit Log Parser. Die Protokolle kommen von Microsoft SMTP-Server.

Einige Bounces sind groß, wie 550+#5.1.0+Address+rejected+user@domain.com. Es gibt user@domain.com in Absprung.

Aber einige haben keine E-Mail in Fehlermeldung, wie 550+No+such+recipient.

Ich habe einfache Ruby-Skript erstellt, das Protokolle analysiert (verwendet Log Parser) zu finden, welche Mail etwas wie 550+No+such+recipient verursacht.

Ich bin nur überrascht, dass ich nicht ein Werkzeug, das es tut finden konnte. Ich habe Werkzeuge wie Zabbix und Splunk für Log-Analyse gefunden, aber sie sehen wie viel des Guten für eine solche einfache Aufgabe.

Jeder kennt ein Tool, das SMTP-Protokolle analysieren würde, finden Bounces und E-Mails, die sie verursachen?

War es hilfreich?

Lösung

Der Artikel ist genau das, was Sie suchen. Es basiert auf dem großen Tool Parser log.

  

Log Parser ist ein leistungsfähiges, vielseitig   Werkzeug, das Universal-Abfrage liefert   Zugriff auf textbasierte Daten wie Protokoll   Dateien, XML-Dateien und CSV-Dateien, wie   und Schlüsseldatenquellen auf dem   Windows® Betriebssystem wie die   Ereignisprotokoll, die Registry, die Datei   System und Active Directory. Sie   sagen Log Parser, welche Informationen Sie   benötigen und wie Sie es bearbeitet werden soll.   Die Ergebnisse Ihrer Abfrage kann sein   individuell formatiert in textbasierte Ausgabe,   oder sie können mehr beibehalten werden   Spezialität Ziele wie SQL, SYSLOG oder   ein Diagramm. Die meisten Software ist so konzipiert,   erreichen, eine begrenzte Anzahl von   spezifische Aufgaben. Log Parser ist   die Anzahl der Möglichkeiten, verschiedene ... kann es   nur durch die Bedürfnisse begrenzt verwendet werden   und Fantasie des Benutzers. Das   Welt ist Ihre Datenbank mit Log   Parser.

Andere Tipps

Soweit ich sehen kann, Logfile-Analyse ist eigentlich nur Mails zu erkennen, die auf SMTP-Session-Ebene abgelehnt. Was ist Bounces, die auftreten, nachdem der Remote-MTA eine Nachricht für die Lieferung akzeptiert hat, aber anschließend nicht um es zu liefern?

Wir verwenden die folgenden einrichten erkennen und klassifizieren alle Bounces nach Lieferung an den Remote-MTA.

  1. Alle ausgehenden E-Mails gegeben einzigartige Return-Path-Header die, wenn sie decodiert , identifiziert die Empfänger E-Mail-Adresse und die besondere Mailing.

  2. Ein Apache James Server, die Mail an die zurück-Pfad Adresse zurück erhält.

  3. Eine benutzerdefinierte mailet, in Java entwickelt und innerhalb Apache James ausführt, das die Adresse decodiert, sendet die E-Mail-Text auf boogietools prallen die Ergebnisse unserer Datenbank Studio für die Klassifizierung Bounce-Typ und bleibt dann.

Es funktioniert sehr, sehr gut. Wir sind in der Lage permanent Hardbounces und transiente Softbounces zu erfassen, die weiter in sehr granular prallen Typen eingeteilt werden wie Spam Ablehnungen, aus dem Amt Antwort usw.

Sie wollen nicht, die Protokolle zu analysieren prallt, um zu versuchen und zu identifizieren. Sie müssen sowohl falsch-negative und falsch positive Ergebnisse, wenn Sie nur an Protokollen zu suchen.

Bounces nachgelagerten Sie liefern vom Server generiert werden. Sie werden sehen, wie erfolgreich Lieferungen in Ihren ausgehenden Server-Logs.

Die naive Muster Spiel prallt in eingehenden Protokollen (vom Null Absender an einen Ihrer VERP-ed-Adressen) wird ungenau sein. Es gibt ein paar Gründe, warum:

  • wird es eine Verzögerung Warnungen werden mit tatsächlichen Ausfall prallt mischt.
  • Die Out-of-Office-und ähnliche Autoresponder die Null-Absender verwenden battlin-Bots Syndrom zu verhindern.
  • Ebenso Challenge-Response-Systeme (wie * Spieß * boxbe.com) neigen dazu, die null Absender zu verwenden.
  • Ihre VERP-ed Absenderadressen, wenn sie pro Empfänger persistent sind, werden von Spammern geerntet bekommen und kommen zurück, entweder als Spam Ziele oder Backscatter.

So leider die einzige zuverlässige Art und Weise, es zu tun ist, um die Bounce-Nachrichten selbst zu untersuchen. Die meisten von ihnen haben einen „Bericht / Lieferstatus“ MIME-Teil nach RFC1894, und je nach der Sprache Ihrer Wahl gibt es wahrscheinlich Bibliotheken oder Module mit anderen Bounce-Formaten zu helfen. Die einzigen, die ich direkte Erfahrung mit dem Perl-Mail :: DeliveryStatus :: BounceParser Modul, das gut genug funktioniert.

Ich mag LogParser. Als ich für somthing sehr spezifische oder individuelle oder mit regulären Ausdrücken analysieren müssen, verwende ich biterScripting. Sie haben tatsächlich einige Beispielskripte, die ich loszulegen verwendet. Eine davon ist unter http://www.biterscripting.com/Download/SS_WebLogParser.txt .

I zugrunde, ein Bounce-Zähler-Programm auf diesem Post, nur um später herauszufinden, dass diese Methode tatsächlich funktioniert nicht für High-Volume-Absendern, da SMTP-Protokolle sind nicht in der angegebenen Reihenfolge. Es gibt mehr darüber in meinem Blog-Post: E-Mail-Bounce-Erkennung in SMTP-Protokolle und Warum ist es unmöglich, .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top