>Java >java지도 시간 >SpringBoot2에서 Actuator 구성 요소를 구성하는 방법

SpringBoot2에서 Actuator 구성 요소를 구성하는 방법

王林
王林앞으로
2023-05-14 08:46:111901검색

1.액추에이터 소개

1. 모니터링 구성요소 기능

생산 환경에서는 서비스 가용성을 실시간 또는 정기적으로 모니터링해야 합니다. Spring Boot의 Actuator(Health Monitoring) 기능은 모니터링에 필요한 다양한 인터페이스를 제공하여 응용 시스템을 구성 및 조회하고, 관련 기능 통계를 수행할 수 있습니다.

2. 모니터링 분류

Actuator는 모니터링 정보를 표시하는 Rest 인터페이스를 제공합니다.
인터페이스는 세 가지 주요 범주로 나뉩니다.
애플리케이션 구성 클래스: 애플리케이션 구성, 환경 변수, 애플리케이션에 로드된 자동 구성 보고서 등 SpringBoot 애플리케이션과 관련된 구성 클래스 정보를 얻습니다.
Metric 클래스: 메모리 정보, 스레드 풀 정보, HTTP 요청 통계 등과 같이 애플리케이션이 실행될 때 모니터링에 사용되는 메트릭을 가져옵니다.
작업 제어 클래스: 애플리케이션 종료 등 작업 기능을 제공합니다.

2. SpringBoot2.0과의 통합

1. 핵심 종속성 Jar 패키지

<!-- 监控依赖 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

3. 모니터링 인터페이스에 대한 자세한 설명

1. Yml 파일에 구성된 기본 프로젝트 정보

# 端口
server:
  port: 8016
spring:
  application:
    # 应用名称
    name: node16-boot-actuator
management:
  endpoints:
    web:
      exposure:
        # 打开所有的监控点
        include: "*"
      # 自定义监控路径 monitor
      # 默认值:http://localhost:8016/actuator/*
      # 配置后:http://localhost:8016/monitor/*
      base-path: /monitor
  endpoint:
    health:
      show-details: always
    shutdown:
      # 通过指定接口关闭 SpringBoot
      enabled: true
  # 可以自定义端口
  # server:
  #   port: 8089
# 描述项目基础信息
info:
  app:
    name: node16-boot-actuator
    port: 8016
    version: 1.0.0
    author: cicada

2. Health 인터페이스

health는 주로 애플리케이션의 실행 상태를 확인하는 데 사용됩니다

路径:http://localhost:8016/monitor/info
输出:
{
    "app": {
        "name": "node16-boot-actuator",
        "port": 8016,
        "version": "1.0.0",
        "author": "cicada"
    }
}

3. Beans 인터페이스

는 Bean 유형, 단일 인스턴스 및 다중 인스턴스, 별칭, 클래스의 전체 경로, 종속성을 보여줍니다. 항아리 등

路径:http://localhost:8016/monitor/health
输出:
{
    "status": "UP",
    "details": {
        "diskSpace": {
            "status": "UP",
            "details": {
                "total": 185496236032,
                "free": 140944084992,
                "threshold": 10485760
            }
        }
    }
}

4. 조건 인터페이스

구성이 유효한 조건이나 자동 구성이 잘못된 이유를 확인하세요.

路径:http://localhost:8016/monitor/beans
输出:
{
    "contexts": {
        "node16-boot-actuator": {
        "beans": {
            "endpointCachingOperationInvokerAdvisor": {
                "aliases": [],
                "scope": "singleton",
                "type": "org.springframework.boot.actuate.endpoint.invoker.cache.CachingOperationInvokerAdvisor",
                "resource": "class path resource [org/springframework/boot/actuate/autoconfigure/endpoint/EndpointAutoConfiguration.class]",
                "dependencies": ["environment"]
            }
        }
    }
}

5. HeapDump 인터페이스

는 Jvm 힙 덤프 파일 HeapDump를 자동으로 생성합니다. 모니터링 도구 VisualVM을 사용하여 이 파일을 열어 메모리 스냅샷을 볼 수 있습니다.

路径:http://localhost:8016/monitor/conditions
输出:
{
    "contexts": {
        "node16-boot-actuator": {
            "positiveMatches": {
                "AuditAutoConfiguration#auditListener": [{
                    "condition": "OnBeanCondition",
                    "message": "@ConditionalOnMissingBean"
                }],
    }
}

6. 매핑 인터페이스

URI 경로와 컨트롤러 간의 매핑 관계를 설명합니다

路径:http://localhost:8016/monitor/heapdump

7. ThreadDump 인터페이스

스레드 이름, 스레드 ID, 잠금 대기 여부, 스레드 상태, 스레드 잠금 및 기타 관련 정보를 표시합니다.

아아아아

위 내용은 SpringBoot2에서 Actuator 구성 요소를 구성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제