squbs 홈 페이지 의 17 관리 콘 솔

7090 단어
squbs 관리 콘 솔 은 시스템 상태 와 squbs, JVM 을 포함 한 웹 / JSON 인 터 페 이 스 를 제공 합 니 다.squbs 와 JVM 의 모든 상태 와 통계 정 보 는 JMX MXbean 에서 제공한다.Cube, 응용 또는 구성 요 소 는 모니터 를 마음대로 등록 할 수 있 습 니 다.
메모: squbs 관리 콘 솔 은 JMX 방법의 실행 이나 그 어떠한 설정 의 수정 도 허용 하지 않 습 니 다.
의지 하 다
squbs 관리 콘 솔 을 사용 하기 위해 서 는 다음 과 같은 의존 도 를 추가 하 십시오.
"org.squbs" %% "squbs-admin" % squbsVersion

squbs - admin 이 자동 으로 검 측 됩 니 다.API 필요 없어 요.
Bean 정보 방문
squbs - admin 은 상하 문 / adm 를 사용 합 니 다.명중 / adm 만 있 으 면 JMX MXbean 디 렉 터 리 와 bean 에 접근 하 는 관련 URL 이 표 시 됩 니 다.다음 과 같다.
{
  "JMImplementation:type=MBeanServerDelegate" : "http://localhost:8080/adm/bean/JMImplementation:type~MBeanServerDelegate",
  "com.sun.management:type=DiagnosticCommand" : "http://localhost:8080/adm/bean/com.sun.management:type~DiagnosticCommand",
  "com.sun.management:type=HotSpotDiagnostic" : "http://localhost:8080/adm/bean/com.sun.management:type~HotSpotDiagnostic",
  "java.lang:type=ClassLoading" : "http://localhost:8080/adm/bean/java.lang:type~ClassLoading",
  "java.lang:type=Compilation" : "http://localhost:8080/adm/bean/java.lang:type~Compilation",
  "java.lang:type=GarbageCollector,name=PS MarkSweep" : "http://localhost:8080/adm/bean/java.lang:type~GarbageCollector,name~PS%20MarkSweep",
  "java.lang:type=GarbageCollector,name=PS Scavenge" : "http://localhost:8080/adm/bean/java.lang:type~GarbageCollector,name~PS%20Scavenge",
  "java.lang:type=Memory" : "http://localhost:8080/adm/bean/java.lang:type~Memory",
  "java.lang:type=MemoryManager,name=CodeCacheManager" : "http://localhost:8080/adm/bean/java.lang:type~MemoryManager,name~CodeCacheManager",
  "java.lang:type=MemoryManager,name=Metaspace Manager" : "http://localhost:8080/adm/bean/java.lang:type~MemoryManager,name~Metaspace%20Manager",
  "java.lang:type=MemoryPool,name=Code Cache" : "http://localhost:8080/adm/bean/java.lang:type~MemoryPool,name~Code%20Cache",
  "java.lang:type=MemoryPool,name=Compressed Class Space" : "http://localhost:8080/adm/bean/java.lang:type~MemoryPool,name~Compressed%20Class%20Space",
  "java.lang:type=MemoryPool,name=Metaspace" : "http://localhost:8080/adm/bean/java.lang:type~MemoryPool,name~Metaspace",
  "java.lang:type=MemoryPool,name=PS Eden Space" : "http://localhost:8080/adm/bean/java.lang:type~MemoryPool,name~PS%20Eden%20Space",
  "java.lang:type=MemoryPool,name=PS Old Gen" : "http://localhost:8080/adm/bean/java.lang:type~MemoryPool,name~PS%20Old%20Gen",
  "java.lang:type=MemoryPool,name=PS Survivor Space" : "http://localhost:8080/adm/bean/java.lang:type~MemoryPool,name~PS%20Survivor%20Space",
  "java.lang:type=OperatingSystem" : "http://localhost:8080/adm/bean/java.lang:type~OperatingSystem",
  "java.lang:type=Runtime" : "http://localhost:8080/adm/bean/java.lang:type~Runtime",
  "java.lang:type=Threading" : "http://localhost:8080/adm/bean/java.lang:type~Threading",
  "java.nio:type=BufferPool,name=direct" : "http://localhost:8080/adm/bean/java.nio:type~BufferPool,name~direct",
  "java.nio:type=BufferPool,name=mapped" : "http://localhost:8080/adm/bean/java.nio:type~BufferPool,name~mapped",
  "java.util.logging:type=Logging" : "http://localhost:8080/adm/bean/java.util.logging:type~Logging",
  "org.squbs.unicomplex:type=CubeState,name=admin" : "http://localhost:8080/adm/bean/org.squbs.unicomplex:type~CubeState,name~admin",
  "org.squbs.unicomplex:type=Cubes" : "http://localhost:8080/adm/bean/org.squbs.unicomplex:type~Cubes",
  "org.squbs.unicomplex:type=Extensions" : "http://localhost:8080/adm/bean/org.squbs.unicomplex:type~Extensions",
  "org.squbs.unicomplex:type=Listeners" : "http://localhost:8080/adm/bean/org.squbs.unicomplex:type~Listeners",
  "org.squbs.unicomplex:type=ServerStats,listener=default-listener" : "http://localhost:8080/adm/bean/org.squbs.unicomplex:type~ServerStats,listener~default-listener",
  "org.squbs.unicomplex:type=SystemSetting" : "http://localhost:8080/adm/bean/org.squbs.unicomplex:type~SystemSetting",
  "org.squbs.unicomplex:type=SystemState" : "http://localhost:8080/adm/bean/org.squbs.unicomplex:type~SystemState"
}

JSON 플러그 인 은 브 라 우 저가 이 링크 를 검색 하고 클릭 할 수 있 도록 합 니 다.제 공 된 링크, 예 를 들 어 org. squbs. unicomplex: type = Cubes 는 모든 bean 의 세부 사항 을 다음 과 같이 보 여 줍 니 다.
{
  "Cubes" : [
    {
      "fullName" : "org.squbs.admin",
      "name" : "admin",
      "supervisor" : "Actor[akka://squbs/user/admin#104594558]",
      "version" : "0.7.1"
    }
  ]
}

Bean URL 과 인 코딩
모든 bean 은 / adm / bean / 경로 에서 완전한 bean 대상 이름 을 따 릅 니 다.bean 대상 이름 은 다음 과 같이 변환 되 어 URL 접근 이 쉬 워 집 니 다.
  • bean 이름 의 = 바 꾸 기 ~.
  • 모든 다른 문 자 는 표준 URL 인 코딩 에 따라 인 코딩 됩 니 다.예 를 들 어 이름 의 빈 칸 이% 20 으로 인 코딩 되 었 습 니 다.

  • 예 를 들 어 대상 이름 java. lang: type = GarbageCollector, name = PS Scavenge 를 사용 하여 bean 에 접근 하면 URL 은 / adm / bean / java. lang: type ~ GarbageCollector, name ~ PS% 20 Scavenge 입 니 다.
    모니터
    squbs - admin 은 admin - listener 에 연결 되 어 있 습 니 다.기본적으로 default - listener 의 별명 입 니 다.서 비 스 는 유 니 컴 플 렉 스 설정 을 덮어 쓰 고 admin - listener 별명 을 다른 정 의 된 모니터 에 재배 치 할 수 있 습 니 다.다음 과 같이 application. conf 에서 별명 을 재배 치 하 는 방법 을 보 여 줍 니 다. 별명 은 Unicomplex 에 정의 되 어 있 습 니 다.
    default-listener {
      aliases = [admin-listener]
    }
    

    application. conf 에 복 사 된 예
    default-listener {
      aliases = []
    }
    
    my-listener {
      aliases = [admin-listener]
    }
    

    배제 하 다.
    많은 경우 MXbean 은 민감 하 게 여 겨 지 는 정 보 를 포함 할 수 있 으 며 관리 콘 솔 에 표시 해 서 는 안 된다.물론 가장 좋 은 해결책 은 우선 이 정 보 를 JMX bean 에 포함 시 키 지 않 는 것 이다.그러나, 때때로 이 bean 들 은 구성 요소 에 의 해 공개 되 지 않 지만, 제3자 구성 요소 나 라 이브 러 리 는 제3자 구성 요 소 를 수정 할 수 없 는 상황 에서 이러한 정 보 를 숨 길 수 있 기 때 문 입 니 다.제 외 는 관리 콘 솔 에서 제공 하 는 기능 으로 JSON 에 표 시 된 정 보 를 숨 기 는 데 사 용 됩 니 다.설정 은 application. conf 에서 제외 하고 squbs. admin 에서 설정 합 니 다. 다음 과 같 습 니 다.
    squbs.admin {
      exclusions = [
        "java.lang:type=Memory",
        "java.lang:type=GarbageCollector,name=PS MarkSweep::init",
        "java.lang:type=GarbageCollector,name=PS MarkSweep::startTime"
      ]
    }
    
  • 콘 솔 보기에 서 MXbean 전 체 를 제거 하려 면 제외 항목 에 bean 대상 이름 을 표시 하 십시오.
  • MXbean 의 필드 나 속성 을 제거 하려 면 제외 항목 에 bean 대상 이름과 필드 이름 을 표시 하 십시오.
  • bean 대상 이름과 필드 이름 은: 분 리 됩 니 다.
  • 필드 이름 은 MXbean 의 깊이 있 는 모든 속성 이나 필드 의 필터 입 니 다.필드 이름 이 제 공 된 이름과 일치 하면 제 외 됩 니 다.
  • beanName: field 1, beanName: field 2 등 을 표시 하여 같은 bean 의 여러 필드 를 제거 할 수 있 습 니 다.

  • 오류 응답
    잘못된 bean 대상 이름 을 얻 거나 블랙리스트 bean 에 들 어 갈 때 404 (NotFound) 응답 을 받 습 니 다.안전 원인 으로 인해 이 두 가지 상황 의 결 과 는 구분 할 수 없다.

    좋은 웹페이지 즐겨찾기