java - Logback 附加程序和 Postfix

标签 java email postfix-mta logback appender

我正在尝试创建一个附加程序来过滤错误级别以下的任何日志并发送包含这些日志的电子邮件。 这就是我的 logback.xml 文件的样子(只是附加器部分):

<appender name="EMAIL" class="ch.qos.logback.classic.net.SMTPAppender">
    <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
        <!-- deny all events with a level below ERROR -->
        <level>ERROR</level>
    </filter>
    <smtpHost>${smtpHost}</smtpHost>
    <smtpPort>${smtpPort}</smtpPort>
    <STARTTLS>true</STARTTLS>
    <username>${username}</username>
    <password>${password}</password>
    <to>${mailingList}</to>

    <from>${username}</from>
    <subject>%logger{20} - %m</subject>
    <layout class="ch.qos.logback.classic.html.HTMLLayout"/>
    <cyclicBufferTracker class="ch.qos.logback.core.spi.CyclicBufferTrackerImpl">
          <bufferSize>1</bufferSize>
    </cyclicBufferTracker>
</appender>

其中 smtpHost 是 localhost,用户名密码 属于我在运行应用程序的服务器上创建的用户。 它似乎不起作用 - 没有发送电子邮件。

但是,当我参数化另一台服务器时,即 smtpHost = smtp.gmail.com,我会按预期收到电子邮件。

我想这意味着我在服务器上配置 postfix 的方式有问题。 我很乐意在此处发布 main.cf 文件中的任何信息(我只是不想发布全部信息)。

最佳答案

虽然可能性不大,但这里有一个想法。 Posfix 通常配置为拒绝来自未发出有效 helo_hostname 的发件人的电子邮件。 postfix的main.ch有类似下面的指令吗?

smtpd_helo_restrictions =
        reject_non_fqdn_helo_hostname,
        reject_invalid_helo_hostname

smtpd_sender_restrictions = 
        reject_non_fqdn_sender,
        reject_unknown_sender_domain

如果是这样,您可能需要设置 localhost SMTPAppender的属性(property)到一个合理的值。顺便说一下,${username}可能不应该用于设置 <from><username>用于后缀。

BYW,设置debug几乎总是一个好主意。 <configuration> 的属性元素至 true在控制台上查看 logback 的内部消息。如:

<configuration debug="true">...</configuration>

关于java - Logback 附加程序和 Postfix,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11104546/

相关文章:

java - 页面链接: easy with HTML but not with Java SWT

java - Android - 将嵌套 map 转换为 JSON 字符串

java - 使用 JOOQ 将小数秒保存为数据库中的 TIME 数据类型

c# - Crystal Reports 转换为 HTML 并作为正文在邮件中发送?

ruby - 在 Ubuntu 上监控 Postfix Server 和 Ruby 响应

centos - Virtualmin 启用 DKIM 后缀错误 : initctl: Unknown job: dkim-milter

java - 用于枚举的 wsimport JAXB 类

php - 每次服务器表加载传输的数据时,如何向收件人发送包含表数据的电子邮件?

html - 图像在 Outlook 2007/2010 中被截断

ruby-on-rails - 通过 Rails 发送的 HTML 电子邮件以附件形式到达