Spring boot actuator端点启用和暴露
1.启用端点
默认情况下,除了shutdown端点是关闭的,其它的都是启用的。配置一个端点的启用,使用management.endpoint..enabled属性,下面的例子是启用shutdown端点:
1 | management.endpoint.shutdown.enabled= true |
如果你个人更喜欢自定义端点的启用和关闭,可以使用如下属性
1 | management.endpoints.enabled-by- default = false |
关闭所有端点启用情况,个人可以单独的通过设置enabled属性启用端点;下面的示例示关闭所有的端点,并且请用info端点:
1 2 | management.endpoints.enabled-by- default = false management.endpoint.info.enabled= true |
禁用端点端点会被从ApplicationContext上下文中删除,如果只是想从技术上更改端点的暴露,可以使用include和exclude属性替代。
2.暴露端点
由于端点可能包含敏感信息,应该仔细的考虑什么时候暴露它们,下面的表格展示了内置端点的暴露情况:
去改变将那个端点暴露出来,可以使用特定的技术include和exclude属性:
include属性列出暴露端点的IDS,exclude属性列出不应该暴露端点的IDS;exclude属性的优先级高于include属性,include和exclude属性都可以使用端点列表来配置IDS.
例如:停止公开所有在JMX上公开的端点,只公开info和health两个端点,使用如下属性:
1 | management.endpoints.jmx.exposure.include=health,info |
* 可以用来表示所有的端点,例如,通过HTTP公开所有的端点,除了env和beans端点,使用如下的属性:
1 2 | management.endpoints.web.exposure.include=* management.endpoints.web.exposure.exclude=env,beans |
* 在YAML中有特殊的含义,所以如果想使用include或者exclude包含所有的端点时要加上双引号,如下示例:
1 2 3 4 5 | management: endpoints: web: exposure: include: "*" |
如果你要暴露你的端点为public,我们强烈的建议你使用加密。
如果暴露端点的时候想实现在自己的策略,你可以注册一个EndpointFilter bean。
详情可见:https://docs.spring.io/spring-boot/docs/current/reference/html/production-ready-endpoints.html
原文链接: https://blog.csdn.net/yaomingyang/article/details/84035975
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现