3.4. MicroProfile 상태 구성
3.4.1. 관리 CLI를 사용하여 상태 검사 링크 복사링크가 클립보드에 복사되었습니다!
관리 CLI를 사용하여 시스템 상태를 확인할 수 있습니다.
프로세스
상태를 검사합니다.
/subsystem=microprofile-health-smallrye:check { "outcome" => "success", "result" => { "status" => "UP", "checks" => [] } }
3.4.2. 관리 콘솔을 사용하여 상태 검사 링크 복사링크가 클립보드에 복사되었습니다!
관리 콘솔을 사용하여 시스템 상태를 확인할 수 있습니다.
검사 런타임 작업은 상태 점검과 글로벌 결과를 부울 값으로 표시합니다.
프로세스
- 런타임 탭으로 이동하여 서버를 선택합니다.
-
Monitor 열에서 MicroProfile Health
View 를 클릭합니다.
3.4.3. HTTP 끝점을 사용하여 상태 검사 링크 복사링크가 클립보드에 복사되었습니다!
상태 점검은 JBoss EAP의 상태 컨텍스트에 자동으로 배포되므로 HTTP 끝점을 사용하여 현재 상태를 얻을 수 있습니다.
관리 인터페이스에서 액세스할 수 있는 /health 끝점의 기본 주소는 http://127.0.0.1:9990/health 입니다.
프로세스
HTTP 끝점을 사용하여 서버의 현재 상태를 얻으려면 다음 URL을 사용합니다.
http://<host>:<port>/health이 컨텍스트에 액세스하면 서버가 정상 상태인지 여부를 나타내는 JSON 형식의 상태 점검이 표시됩니다.
3.4.4. MicroProfile 상태에 대한 인증 활성화 링크 복사링크가 클립보드에 복사되었습니다!
액세스를 위해 인증이 필요하도록 상태 컨텍스트를 구성할 수 있습니다.
프로세스
microprofile-health-undercloudrye 하위 시스템에서속성을security-enabledtrue로 설정합니다./subsystem=microprofile-health-smallrye:write-attribute(name=security-enabled,value=true)변경 사항을 적용하려면 서버를 다시 로드합니다.
reload
이후 /health 엔드포인트에 액세스하려고 하면 인증 프롬프트가 트리거됩니다.
3.4.5. 서버 상태 및 준비 상태를 확인하는 준비 상태 프로브 링크 복사링크가 클립보드에 복사되었습니다!
JBoss EAP XP 5.0.0은 서버 상태 및 준비 상태를 확인하기 위해 세 가지 준비 상태 프로브를 지원합니다.
-
server-status- server-state가실행중일 때UP을 반환합니다. -
boot-errors- 프로브에서 부팅 오류를 감지하지 않으면UP을 반환합니다. -
deployment-status- 모든 배포의 상태가OK이면UP을 반환합니다.
이러한 준비 상태 프로브는 기본적으로 활성화되어 있습니다. MicroProfile Config 속성 mp.health.disable-default-procedures 를 사용하여 프로브를 비활성화할 수 있습니다.
다음 예제에서는 검사 작업에서 세 개의 프로브를 사용하는 방법을 보여줍니다.
[standalone@localhost:9990 /] /subsystem=microprofile-health-smallrye:check
{
"outcome" => "success",
"result" => {
"status" => "UP",
"checks" => [
{
"name" => "boot-errors",
"status" => "UP"
},
{
"name" => "server-state",
"status" => "UP",
"data" => {"value" => "running"}
},
{
"name" => "empty-readiness-checks",
"status" => "UP"
},
{
"name" => "deployments-status",
"status" => "UP"
},
{
"name" => "empty-liveness-checks",
"status" => "UP"
},
{
"name" => "empty-startup-checks",
"status" => "UP"
}
]
}
}
3.4.6. 프로브가 정의되지 않은 경우 글로벌 상태 링크 복사링크가 클립보드에 복사되었습니다!
:empty-readiness-checks-status,:empty-, liveness -checks-status:empty-startup-checks-status 관리 속성은 준비 상태, 활성 상태 또는 시작 프로브가 정의되지 않은 경우 글로벌 상태를 지정합니다.
이러한 속성을 사용하면 애플리케이션이 애플리케이션이 준비되었는지, 실시간 또는 시작 여부를 확인할 때까지 애플리케이션이 'DOWN'을 보고할 수 있습니다. 기본적으로 애플리케이션은 'UP'을 보고합니다.
:empty-속성은readiness-checks-status준비프로브가 정의되지 않은 경우 준비 상태 프로브의 글로벌 상태를 지정합니다./subsystem=microprofile-health-smallrye:read-attribute(name=empty-readiness-checks-status) { "outcome" => "success", "result" => expression "${env.MP_HEALTH_EMPTY_READINESS_CHECKS_STATUS:UP}" }:empty-속성은 활성 프로브가 정의되지 않은 경우 활성 프로브에 대한 글로벌 상태를 지정합니다.liveness-checks-status/subsystem=microprofile-health-smallrye:read-attribute(name=empty-liveness-checks-status) { "outcome" => "success", "result" => expression "${env.MP_HEALTH_EMPTY_LIVENESS_CHECKS_STATUS:UP}" }:empty-속성은 시작 프로브가 정의되지 않은 경우startup-checks-status시작프로브에 대한 글로벌 상태를 지정합니다./subsystem=microprofile-health-smallrye:read-attribute(name=empty-startup-checks-status) { "outcome" => "success", "result" => expression "${env.MP_HEALTH_EMPTY_STARTUP_CHECKS_STATUS:UP}" }준비상태 프로브,활성상태 프로브 및시작프로브를 확인하는/healthHTTP 끝점 및:check작업도 이러한 특성을 고려합니다.
다음 예와 같이 이러한 속성을 수정할 수도 있습니다.
/subsystem=microprofile-health-smallrye:write-attribute(name=empty-readiness-checks-status,value=DOWN)
{
"outcome" => "success",
"response-headers" => {
"operation-requires-reload" => true,
"process-state" => "reload-required"
}
}