我在SpringBoot网站中使用JavaMailSenderImpl。
@Autowired
private JavaMailSender mailSender;
private void sendMail(String from, String[] to, String subject, String content)
{
SimpleMailMessage message = new SimpleMailMessage();
message.setFrom(from);
message.setTo(to);
message.setSubject(subject);
message.setText(content);
try {
mailSender.send(message);
PublicLogger.LOGGER_DEDUCT_GENERATE_NOTIFICATION_SERVICE_IMPL.info("The email has been sent");
} catch (Exception ex) {
PublicLogger.LOGGER_DEDUCT_GENERATE_NOTIFICATION_SERVICE_IMPL.error("sent email failed: {}", ex);
}
}
所以我猜想,Spring 有时会通过某种方式检查 SMTP 服务器的可用性。你知道在哪里设置吗?谢谢。
如果您想启用/禁用邮件健康检查:
应用程序.属性
management.health.mail.enabled=true # Whether to enable Mail health check.
默认情况下,Spring Boot Actuator 将检查您的 smtp 服务器是否可访问,作为整体运行状况检查的一部分。如果不是,运行状况检查将失败(503 状态:DOWN)。健康检查的频率通常在平台(例如 Kubernetes)配置中指定。