覆盖特定的春季启动运行状况指示器

时间:2016-08-10 13:33:12

标签: spring-boot

无论如何都要覆盖特定健康指标的输出?

特别是在内置的中,我想改变它自己返回的信息。

e.g。 mongo健康指标有一个不好的副作用,它可能需要很长时间才能超时,我们发现这对我们的监测是灾难性的。现在,当我们获得健康端点的超时时,这几乎是因为mongo的heath ping等待超时,ergo mongo无法访问。

1 个答案:

答案 0 :(得分:2)

我能看到这样做的最好方法是禁用默认的mongo运行状况指示器并创建自己的指示器。要禁用,请将import moment from 'moment' exports.rewritePath = (parsedFilePath, metadata) => { if (parsedFilePath.ext === "md") { return `/${moment(metadata.createdAt).format('YYYY')}/${parsedFilePath.name}/` } } 的属性设置为management.health.mongo.enabled。然后创建自己只需查看false并为您的健康监视器创建一个类似的类。重要的是用您的自定义指标类替换MongoHealthIndicatorConfiguration类。现有的MongoHealthIndicator用于健康检查:

MongoHealthIndicator