Debian 10(Buster)을 설치하고 dovecot
, sieve
및 logwatch
.
내 체 파일에는 discard
.
Nov 2 19:46:17 xxxxx dovecot: lda(xxxxx)<12473><IOa9OvlToF+5MAAAwswyaQ>: sieve: msgid=<[email protected]>: marked message to be discarded if not explicitly delivered (discard action)
로그 관찰 보고서에서 나는 이것을 보았습니다.
**Unmatched Entries**
dovecot: lda(xxxxx)<1003><RUjQJX2GoV/rAwAAwswyaQ>: sieve: msgid=<[email protected]>: marked message to be discarded if not explicitly delivered (discard action): 1 Time(s)
...
/usr/share/logwatch/scripts/services/dovecot에서 logwatch에 대한 dovecot 필터 코드를 확인했는데 이러한 메시지를 무시하는 규칙이 있지만 분명히 작동하지 않습니다.
스크립트 파일에서 찾은 내용은 다음과 같습니다.
} elsif ( $ThisLine =~ /^$dovecottag (?:lda|deliver|lmtp)\(.*\): .*sieve: msgid=.* marked message to be discarded if not explicitly delivered/ ) {
# dovecot: lda(joe): sieve: msgid=<m$01$@com>: marked message to be discarded if not explicitly delivered (discard action)
# IGNORE
}
내 비둘기 버전은 2.3.4.1입니다. 내 로그워치 버전은 7.4.3입니다.
답변1
"시험관 내" 테스트를 통해 스크립트 규칙이 <1003><RUjQJX2GoV/rAwAAwswyaQ>
.
를 삽입하여 문제가 해결되었습니다 .*
. 이건 고정된 규칙이에요
} elsif ( $ThisLine =~ /^$dovecottag (?:lda|deliver|lmtp)\(.*\).*: .*sieve: msgid=.* marked message to be discarded if not explicitly delivered/ ) {
# dovecot: lda(joe): sieve: msgid=<m$01$@com>: marked message to be discarded if not explicitly delivered (discard action)
# IGNORE
}
저는 Dovecot 2.3.4.1 및 Logwatch 7.4.3과 함께 Debian 10을 사용하고 있습니다. Logwatch의 최신 버전은 아니지만, apt-get을 통해 Debian에 기본적으로 설치되는 버전입니다.
답변2
Debian 10으로 업그레이드한 후에도 이 문제가 발생했습니다.
dovecot 2.3.4.1의 로그 접두사는 기본적으로 pid 및 세션을 포함하도록 변경되었습니다. Buster의 Logwatch 버전(7.4.3)은 이를 고려하지 않았으며, 이로 인해 일치하지 않는 항목이 많이 발생하고 함께 그룹화되지 않은 오류가 발생했습니다. (여기에서 비둘기장의 규칙을 볼 수 있습니다 /usr/share/logwatch/scripts/services/dovecot
.) 최신 버전의 Logwatch(이 글을 쓰는 시점의 7.5.5)에서도 모든 가능성에 대해 수정된 규칙이 없는 것 같습니다.
나에게 가장 효과가 있었던 것은 dovecot의 로그 접두사에서 pid와 세션을 제거하는 것이었습니다.
mail_log_prefix
옵션을 /etc/dovecot/conf.d/10-logging.conf
다음으로 변경하세요.
# Log prefix for mail processes. See doc/wiki/Variables.txt for list of
# possible variables you can use.
#mail_log_prefix = "%s(%u)<%{pid}><%{session}>: "
# remove pid and session for compatability with logwatch
mail_log_prefix = "%s(%u): "
변경 사항을 적용하려면 비둘기장을 다시 시작하세요.
systemctl restart dovecot