SpringBoot 설정 Actuator 구성 요소,시스템 모니터링 실현

1.Actuator 소개
모니터링 분류
  • Actuator 는 Rest 인 터 페 이 스 를 제공 하고 모니터링 정 보 를 보 여 줍 니 다
  • 인 터 페 이 스 는 세 가지 유형 으로 나 뉜 다응용 설정 클래스:응용 프로그램 에 불 러 온 응용 설정,환경 변수,자동화 설정 보고서 등 SpringBoot 응용 과 관련 된 설정 클래스 정 보 를 가 져 옵 니 다4.567917.도량형 기준 류:응용 프로그램 이 실행 되 는 과정 에서 모니터링 에 사용 되 는 도량형 기준 을 얻 습 니 다.예 를 들 어 메모리 정보,스 레 드 탱크 정보,HTTP 요청 통계 등 입 니 다4.567917.조작 제어 류:응용 에 대한 닫 기 등 조작 류 기능 을 제공 합 니 다2.SpringBoot 2.0 과 통합 
    1,핵심 의존 Jar 가방
    
    <!--      -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>
    2.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
    3.모니터링 인터페이스 상세 설명 
    1.정보 인터페이스
    Yml 파일 에 설 정 된 항목 기본 정보
    
      :http://localhost:8016/monitor/info
      :
    {
        "app": {
            "name": "node16-boot-actuator",
            "port": 8016,
            "version": "1.0.0",
            "author": "cicada"
        }
    }
    2.Health 인터페이스
    helh 는 주로 응용 프로그램의 운행 상 태 를 검사 하 는 데 쓰 인 다.
    
      :http://localhost:8016/monitor/health
      :
    {
        "status": "UP",
        "details": {
            "diskSpace": {
                "status": "UP",
                "details": {
                    "total": 185496236032,
                    "free": 140944084992,
                    "threshold": 10485760
                }
            }
        }
    }
    3.Beans 인터페이스
    bean 의 유형,단일 사례,별명,클래스 의 전체 경로,Jar 의존 등 내용 을 보 여 줍 니 다.
    
      :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"]
                }
            }
        }
    }
    4.Conditions 인터페이스
    설정 이 어떤 조건 에서 유효 하 는 지,아니면 자동 설정 이 왜 유효 하지 않 은 지 확인 합 니 다.
    
      :http://localhost:8016/monitor/conditions
      :
    {
        "contexts": {
            "node16-boot-actuator": {
                "positiveMatches": {
                    "AuditAutoConfiguration#auditListener": [{
                        "condition": "OnBeanCondition",
                        "message": "@ConditionalOnMissingBean"
                    }],
        }
    }
    5,HeapDump 인터페이스
    Jvm 의 덤 프 파일 HeapDump 를 자동 으로 생 성 합 니 다.모니터링 도구 인 VisualVM 을 사용 하여 이 파일 을 열 어 메모리 스냅 샷 을 볼 수 있 습 니 다.
    
      :http://localhost:8016/monitor/heapdump
    6.Mappings 인터페이스
    URI 경로 와 컨트롤 러 의 매 핑 관 계 를 설명 합 니 다.
    
      :http://localhost:8016/monitor/mappings
      :
    {
        "contexts": {
            "node16-boot-actuator": {
                "mappings": {
                    "dispatcherServlets": {
                        "dispatcherServlet": [ {
                            "handler": "Actuator web endpoint 'auditevents'",
                            "predicate": "{GET /monitor/auditevents || application/json]}",
                            "details": {
                                "handlerMethod": {
                                    "className": "org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping.Operat
                                    "name": "handle",
                                    "descriptor": "(Ljavax/servlet/http/HttpServletRequest;Ljava/util/Map;)Ljava/lang/Object;"
                                },
                                "requestMappingConditions": {
                                    "consumes": [],
                                    "headers": [],
                                    "methods": ["GET"],
                                    "params": [],
                                    "patterns": ["/monitor/auditevents"],
                                    "produces": [{
                                        "mediaType": "application/vnd.spring-boot.actuator.v2+json",
                                        "negated": false
                                    }, {
                                        "mediaType": "application/json",
                                        "negated": false
                                    }]
                                }
                            }
                        }
                }
        }
    }
    7,ThreadDump 인터페이스
    스 레 드 이름,스 레 드 ID,잠 금 대기 여부,스 레 드 상태,스 레 드 잠 금 등 관련 정 보 를 보 여 줍 니 다.
    
      :http://localhost:8016/monitor/threaddump
      :
    {
        "threads": [{
            "threadName": "DestroyJavaVM",
            "threadId": 34,
            "blockedTime": -1,
            "blockedCount": 0,
            "waitedTime": -1,
            "waitedCount": 0,
            "lockName": null,
            "lockOwnerId": -1,
            "lockOwnerName": null,
            "inNative": false,
            "suspended": false,
            "threadState": "RUNNABLE",
            "stackTrace": [],
            "lockedMonitors": [],
            "lockedSynchronizers": [],
            "lockInfo": null
        }
        ]
    }
    8.종료 인터페이스
    Spring Boot 애플 리 케 이 션 을 우아 하 게 닫 습 니 다.기본 값 은 POST 요청 만 지원 합 니 다.
    
      :http://localhost:8016/monitor/shutdown
    소스 코드 주소 
    GitHub 주소:웃 어 봐
    https://github.com/cicadasmile/spring-boot-base
    클 라 우 드 주소:알 겠 습 니 다.
    https://gitee.com/cicadasmile/spring-boot-base
    이상 은 SpringBoot 설정 Actuator 구성 요소 입 니 다.시스템 모니터링 을 실현 하 는 상세 한 내용 입 니 다.SpringBoot 설정 Actuator 에 관 한 자 료 는 다른 관련 글 을 주목 하 십시오!

    좋은 웹페이지 즐겨찾기