Отправить электронную почту только для конкретного исключения (configException)JAVA

Программисты JAVA общаются здесь
Anonymous
Отправить электронную почту только для конкретного исключения (configException)

Сообщение Anonymous »

Я хочу, чтобы log4j2 отправил электронную почту только , когда зарегистрирован ConfigException . Все другие исключения должны быть проигнорированы приложением электронной почты. < /P>
Вот минимальный пример: < /p>

Код: Выделить всё

log4j2.xml

Код: Выделить всё








%d{yyyy-MM-dd HH:mm:ss} %-5level %logger - %msg%n%throwable

















< /code>
java code: < /p>
public class ConfigException extends Exception {
public ConfigException(String message) {
super(message);
}
public ConfigException(String message, Throwable cause) {
super(message, cause);
}
}
< /code>
private final org.apache.logging.log4j.Logger log4jLogger =
org.apache.logging.log4j.LogManager.getLogger(getClass());

public void severe(String message, Throwable throwable) {
log4jLogger.error(message, throwable);
}
< /code>
try {
throw new ConfigException("Config failed");
} catch (ConfigException cEx) {
severe("Hihi; " + cEx.getMessage(), cEx);
}

try {
throw new RuntimeException("Some other error");
} catch (RuntimeException ex) {
severe("Oops; " + ex.getMessage(), ex);
}
Что происходит сейчас:

Электронная почта отправляется для оба исключения. Электронная почта только тогда, когда зарегистрированное исключение является экземпляром ConfigException ?

Подробнее здесь: https://stackoverflow.com/questions/797 ... gexception

Вернуться в «JAVA»