Próbuję skonfigurować usługę Logback do wysyłania wiadomości e-mail, gdy wystąpi wyjątek (poziom rejestrowania: błąd). Nie udało mi się sprawić, by działało tak daleko, więc chciałbym poprosić o pomoc przy konfiguracji.Wiosenne uruchamianie - wysyłanie wiadomości e-mail z logbackami
Mam aplikacji rozruchu wiosna gdzie niektóre przetwarzanie odbywa się:
private void foo() {
try {
// do something
} catch (Exception e) {
log.error("Logging my exception");
}
}
chciałbym wywołać e-mail, gdy ten błąd jest rejestrowany. Śledziłem niektóre tutorials i dodałem logback.xml i SMTP-appender.xml do mojego resources
katalogu:
logback.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<include resource="org/springframework/boot/logging/logback/base.xml" />
<include resource="smtp-appender.xml" />
<logger name="com.mycompany" level="DEBUG">
<appender-ref ref="SMTP" />
</logger>
</configuration>
SMTP appender.xml
<?xml version="1.0" encoding="UTF-8"?>
<included>
<appender name="SMTP" class="ch.qos.logback.classic.net.SMTPAppender">
<smtpHost>xxx</smtpHost>
<username>user</username>
<password>password</password>
<to>[email protected]</to>
<from>[email protected]</from>
<subject>testError</subject>
<layout class="ch.qos.logback.classic.html.HTMLLayout" />
</appender>
</included>
Mam ustawiony lokalny smtpserver na localhost przez sendmail
. Próbowałem również z serwerem SMTP AWS i Gmailem. Żadna z tych usług nie sprawdziła się do tej pory.
Problem polega na tym, że nie otrzymuję żadnych wiadomości e-mail po wystąpieniu wyjątku i nie ma dosłownie żadnego wyjścia odpowiadającego logbackowi (poza wyjściem log.error()
), co powoduje, że myślę, że aplikacja nawet nie wie o tej konfiguracji pliki ...
są to moi zależnościami Maven w pom.xml:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.2.5.RELEASE</version>
<relativePath />
<!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.2</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20141113</version>
</dependency>
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4</version>
</dependency>
</dependencies>
Każda pomoc będzie bardzo mile widziane.
ja nie widzę ** JavaBeans ramy aktywacyjny ** wliczone w pom i to jest potrzebne do wysyłania poczty za pośrednictwem logowania – Deh
dodałem zależność do pom: http://mvnrepository.com/artifact /javax.activation/activation/1.1.1 ale to nie rozwiązuje problemu – Smajl
ani logback i slf4j są włączone – Deh