From 474558172012219b6bcf03df70df96077999dc69 Mon Sep 17 00:00:00 2001 From: HBerni Date: Sat, 21 Mar 2020 16:39:01 +0100 Subject: [PATCH] fixed parsing due to changes in dovecots default mail_log_prefix regex supports old and new default format now (see https://wiki2.dovecot.org/Upgrading/2.3) --- lib/Froxlor/MailLogParser.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/Froxlor/MailLogParser.php b/lib/Froxlor/MailLogParser.php index f8800e89..4a9ef696 100644 --- a/lib/Froxlor/MailLogParser.php +++ b/lib/Froxlor/MailLogParser.php @@ -209,12 +209,12 @@ class MailLogParser $timestamp = $this->getLogTimestamp($line); if ($this->startTime < $timestamp) { - if (preg_match("/dovecot.*(?::|\]) imap\(.*@([a-z0-9\.\-]+)\):.*(?:in=(\d+) out=(\d+)|bytes=(\d+)\/(\d+))/i", $line, $matches)) { + if (preg_match("/dovecot.*(?::|\]) imap\(.*@([a-z0-9\.\-]+)\)(<\d+><[a-z0-9+\/=]+>)?:.*(?:in=(\d+) out=(\d+)|bytes=(\d+)\/(\d+))/i", $line, $matches)) { // Dovecot IMAP - $this->addDomainTraffic($matches[1], (int) $matches[2] + (int) $matches[3], $timestamp); - } elseif (preg_match("/dovecot.*(?::|\]) pop3\(.*@([a-z0-9\.\-]+)\):.*in=(\d+).*out=(\d+)/i", $line, $matches)) { + $this->addDomainTraffic($matches[1], (int) $matches[3] + (int) $matches[4], $timestamp); + } elseif (preg_match("/dovecot.*(?::|\]) pop3\(.*@([a-z0-9\.\-]+)\)(<\d+><[a-z0-9+\/=]+>)?:.*in=(\d+).*out=(\d+)/i", $line, $matches)) { // Dovecot POP3 - $this->addDomainTraffic($matches[1], (int) $matches[2] + (int) $matches[3], $timestamp); + $this->addDomainTraffic($matches[1], (int) $matches[3] + (int) $matches[4], $timestamp); } } }