我正在尝试创建一个附加程序来过滤低于错误级别的任何日志并使用这些日志发送电子邮件。这就是我的 logback.xml 文件的样子(只是 appender 部分):
<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在哪里username
,password
属于我在运行应用程序的服务器上创建的用户。它似乎不起作用 - 没有发送电子邮件。
但是,当我为另一台服务器(即 )设置参数时smtpHost = smtp.gmail.com
,我会按预期收到电子邮件。
我想这意味着我在服务器上配置后缀的方式有问题。我很乐意在此处发布main.cf
文件中的任何信息(我只是不想全部发布)。