首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为Spring Boot Admin重新定义邮件通知模板

为Spring Boot Admin重新定义邮件通知模板
EN

Stack Overflow用户
提问于 2016-11-07 19:11:57
回答 2查看 1.2K关注 0票数 0

我们可以有一个变量的样本来重新定义模板吗,documentation在这方面是稀缺的?

在Class package de.codecentric.boot.admin.notify.MailNotifier中我读到

代码语言:javascript
复制
private static final String DEFAULT_SUBJECT = "#{application.name} (#{application.id}) is #{to.status}";
private static final String DEFAULT_TEXT = "#{application.name} (#{application.id})\nstatus changed from #{from.status} to #{to.status}\n\n#{application.healthUrl}";

在我的特定用例中,我继承了一堆应用程序,我希望ping或监视它们是活动的。我无法控制它们,但我的应用依赖于它们。

我的应用程序不会失败,但可能会运行不正常(重要一点!)。

所以我添加了一堆自定义HealthIndicator来让ping监控它们,它们工作得很完美,我很高兴更改了一个IP,并发送了一个通知,太棒了!

但是有一个但是,发送的消息让我认为应用程序失败了,而健康指示器是状态OUT_OF_SERVICE,对DevOps来说是不必要的压力。

来问我的问题,我如何添加一些额外的变量,通过这些变量,精心制作的SPEL会区分健康指示器消息的状态变化而不是应用程序状态的变化,即webapp下线。

是否有SBA关键字字典可用于重新定义,例如spring.boot.admin.notify.mail.text邮件通知配置选项?

我猜这对hipchat、Slack等其他通知程序也是有效的。

谢谢。

EN

回答 2

Stack Overflow用户

发布于 2016-11-07 19:43:25

用于计算SpEL表达式的上下文是事件。因此,来自ClientApplicationEvent (或事件实例的相应子类(例如,ClientApplicationStatusChangedEvent))的所有属性都是可用的。

如果还不够,您可以发布自己的MailNotifier子类。

票数 2
EN

Stack Overflow用户

发布于 2016-11-08 01:23:20

答案是否定的,在当前的代码库中,如果没有代码更改,就不能这样做。可用的SBA通知关键字/变量如下:

  • application.name
  • application.id
  • application.healthUrl
  • application.managementUrl
  • application.serviceUrl
  • application.statusInfo.status
  • from.status
  • to.status
  • timestamp
  • type

我们没有别的东西了。然而,StatusUpdater.queryStatus看起来很有希望获得一些额外的数据。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40463789

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档