Spring Boot 提供了 Spring Boot Actuator 模块来进行服务监控和管理。Actuator 提供了一系列内置的管理端点,通过这些端点可以查看应用程序的运行状况、配置信息、日志等,以及执行一些管理操作。以下是一些常用的 Actuator 端点和配置:

  1. 健康检查 /actuator/health

    • 提供应用程序的健康检查信息,可以用于查看应用程序是否正常运行。可以配置详细的健康检查规则。
    management:
      endpoint:
        health:
          show-details: always
    
  2. 信息端点 /actuator/info

    • 提供自定义的应用程序信息。可以在 application.propertiesapplication.yml 文件中配置自定义信息。
    info:
      app:
        name: MySpringBootApp
        description: This is a Spring Boot application.
    
  3. 环境信息端点 /actuator/env

    • 提供应用程序的环境信息,包括配置属性、系统属性等。
  4. 配置信息端点 /actuator/configprops

    • 显示所有可用的配置属性及其源。
  5. 日志级别修改端点 /actuator/loggers

    • 允许动态修改应用程序的日志级别。
  6. 线程栈跟踪端点 /actuator/threaddump

    • 输出线程的堆栈跟踪信息。
  7. 刷新配置端点 /actuator/refresh

    • 触发重新加载配置文件中的属性值,适用于动态调整应用程序的配置。
    management:
      endpoints:
        web:
          exposure:
            include: refresh
    
  8. 关闭应用程序端点 /actuator/shutdown

    • 允许通过发送 POST 请求来关闭应用程序。需要在 application.propertiesapplication.yml 中配置端点的开启。
    management:
      endpoint:
        shutdown:
          enabled: true
    

启用 Actuator 端点的方式有两种:

  1. 自动配置:

    • 在 Spring Boot 应用程序的 classpath 下,包含 spring-boot-starter-actuator 依赖,Actuator 将自动配置为启用。
  2. 手动配置:

    • 如果需要更精细的控制,可以在 application.propertiesapplication.yml 中显式配置 Actuator 端点的开启。
    management:
      endpoints:
        web:
          exposure:
            include: health,info,env,configprops,loggers,threaddump,refresh,shutdown
    

请注意,一些敏感的端点默认是关闭的,需要在配置中显式开启。在生产环境中,应谨慎开启一些具有潜在风险的端点,例如 /shutdown

Was this helpful?

0 / 0

发表回复 0

Your email address will not be published.