Logback SMTPAppender不发送电子邮件 [英] Logback SMTPAppender not sending email

查看:257
本文介绍了Logback SMTPAppender不发送电子邮件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用Logback登录我的java应用程序。我相信我已经正确配置了它,但是当记录错误时

I am attempting to use Logback for logging in my java application. I believe I have it correctly configured, but when an error is logged


ch.qos.logback.classic.net.SMTPAppender中的INFO [电子邮件] - 即将发送
发送SMTP邮件Testing Main至[XXXX@optonline.net]

INFO in ch.qos.logback.classic.net.SMTPAppender[EMAIL] - About to send out SMTP message "Testing Main" to [XXXX@optonline.net]

已打印在控制台之后,之后没有打印任何其他内容,并且从未收到电子邮件。如果我在配置中输入了无效的smtp主机或用户名/密码,则在尝试发送时会立即失败,因此它正在建立连接。

is printed to the console, nothing else is printed after that, and the email is never received. If I enter an invalid smtp host or username/password in the config it fails immediately on attempting to send, so it is establishing a connection.

我的POM:

 <repositories>
    <repository>
    <id>Java.Net</id>
    <url>http://download.java.net/maven/2/</url>
    </repository>
  </repositories>
  <dependencies>

            <dependency>
                <groupId>javax.activation</groupId>
                <artifactId>activation</artifactId>
                <version>1.1.1</version>
            </dependency>


             <dependency>
                 <groupId>javax.mail</groupId>
                 <artifactId>mail</artifactId>
                 <version>1.4.7</version>
             </dependency>

            <dependency>
                <groupId>ch.qos.logback</groupId>
                <artifactId>logback-core</artifactId>
                <version>1.1.1</version>
            </dependency>
            <dependency>
                <groupId>ch.qos.logback</groupId>
                <artifactId>logback-classic</artifactId>
                <version>1.1.1</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-api</artifactId>
                <version>1.7.6</version>
            </dependency>


            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>jcl-over-slf4j</artifactId>
                <version>1.7.6</version>
            </dependency>


         </dependencies>

logback.xml

logback.xml

<configuration>
    <!-- dump status message on the console as they arrive -->
    <statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" />

    <appender name="EMAIL" class="ch.qos.logback.classic.net.SMTPAppender">
        <smtpHost>mail.optonline.net</smtpHost>
        <username>xxxxx</username>
        <password>xxxxxx</password>
        <smtpPort>587</smtpPort>
        <to>xxxxx@optonline.net</to>
        <from>xxxxx@optonline.net</from>
        <subject>Testing %logger
        {20}

        - %m</subject>

        <layout class="ch.qos.logback.classic.PatternLayout">
            <pattern>%d
                {HH:mm:ss.SSS}

                [%thread] %-5level %logger
                {1}

                -%msg%n
            </pattern>
        </layout>
    </appender>

    <root level="info">
        <appender-ref ref="EMAIL" />
    </root>
</configuration>

控制台

10:45:44,596 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy]
10:45:44,596 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
10:45:44,596 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [file:/C:/Users/xxxxx/workspace/logback-test/target/classes/logback.xml]
10:45:44,650 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug attribute not set
10:45:44,658 |-INFO in ch.qos.logback.core.joran.action.StatusListenerAction - Added status listener of type [ch.qos.logback.core.status.OnConsoleStatusListener]
10:45:44,673 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.net.SMTPAppender]
10:45:44,688 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [EMAIL]
10:45:44,765 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to INFO
10:45:44,765 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [EMAIL] to Logger[ROOT]
10:45:44,766 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
10:45:44,767 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@ddc652f - Registering current configuration as safe fallback point
10:45:44,774 |-INFO in ch.qos.logback.classic.net.SMTPAppender[EMAIL] - SMTPAppender [EMAIL] is tracking [1] buffers
exiting
10:45:44,791 |-INFO in ch.qos.logback.classic.net.SMTPAppender[EMAIL] - About to send out SMTP message "Testing Main" to [xxxxx@optonline.net]
10:45:44,791 |-INFO in ch.qos.logback.classic.net.SMTPAppender[EMAIL] - About to send out SMTP message "Testing Main" to [xxxxx@optonline.net]

这是正在运行以生成测试错误的代码

This is the code that is running to produce my test errors

logger.error("Entering app");
logger.error("exiting app");

System.out.println("exiting");

任何有助于调试此问题的帮助都将非常感谢
谢谢

Any help debugging this issue would be greatly appreciated Thank you

推荐答案

这似乎是我使用的SMTP服务器的一个问题。我将Papercut设置为本地smtp服务器,我可以看到它收到消息

It seems to have been an issue with the SMTP server I was using. I setup Papercut as a local smtp server and I can see it receive the messages

这篇关于Logback SMTPAppender不发送电子邮件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆