Monitoring > Service Monitoring > 콘솔 사용 가이드
서비스 관리
모니터링할 서비스, 장애를 전파할 대상과 채널 등을 관리할 수 있습니다.
서비스 추가
- 서비스별로 모니터링을 등록하고 장애를 전파하고 관리합니다. 따라서 서비스를 논리적으로 잘 구분해 관리할 수 있도록 서비스 트리를 제공합니다.
- 서비스 트리 상단의 +추가 버튼을 클릭하면 서비스를 추가할 수 있습니다.
전파 설정
- 장애를 전파받을 담당자를 설정합니다.
- 프로젝트 멤버로 등록된 사용자만 등록할 수 있습니다.
- 먼저 그룹을 등록하고, 그룹별 담당자, 전파받을 채널을 선택합니다.
전파 그룹
전파 채널
- Email
- 회원 정보에 등록한 아이디를 기준으로 장애를 이메일로 전파합니다.
- SMS
- 회원 정보에 휴대폰 번호를 등록한 경우 장애를 SMS로 전파합니다.
- 웹훅
- 사용자의 요구에 맞게 장애 발생 시 동작할 HTTP API를 등록하면, 장애 발생 시 해당 API를 호출하는 웹훅 기능을 제공합니다(예: GitHub 이슈 등록 및 Slack 연동 등). 장애 감지 내용, 서비스 이름, 시나리오 이름 등 감지된 장애와 관련된 정보는 미리 정의된 변수로 치환되어 URL, 헤더, 요청 데이터에서 사용할 수 있으며, 장애 전파 시 치환되어 전송됩니다.
- URL, 웹훅 헤더, 요청 데이터 입력 에디터에서 자동 완성(Ctrl + Space) 기능을 사용해 미리 정의된 변수를 확인하거나 사용할 수 있습니다.
전파 현황
- 감지 및 전파된 장애 이력을 확인할 수 있습니다.
- 다음 그룹으로 장애를 전파하거나 중지하는 기능을 사용할 수 있습니다.
웹 모니터링
HTTP, HTTPS를 통해 서비스를 제공하는 모든 웹 서비스를 모니터링할 수 있습니다.
시나리오 타입
- API 타입
- REST API를 모니터링합니다.
- 최소 30초 주기로 시나리오를 등록할 수 있습니다.
- 가상 브라우저 타입
- 가상 브라우저를 활용해 웹 페이지를 모니터링합니다.
- 사용자 지정 JavaScript를 등록해 페이지의 동작을 모니터링할 수 있습니다.
- 모듈 타입 시나리오를 포함할 수 있으며, 모듈 타입 시나리오를 순차적으로 먼저 실행한 후 시나리오를 실행합니다. 모듈 및 가상 브라우저 시나리오 사이의 세션 및 쿠키는 공유되며, 이를 활용하여 로그인 후 페이지의 동작 여부 등을 테스트할 수 있습니다.
- 최소 60초 주기로 시나리오를 등록할 수 있습니다.
- 모듈 타입
- 여러 시나리오에서 공통으로 필요한 기능(로그인 등)을 제공합니다.
- 모듈 타입 단독으로 동작할 수 없으며, 가상 브라우저 타입에 포함되어 동작합니다.
시나리오 검증
시나리오 검증 방식은 다음과 같습니다.
검증 방식 |
설명 |
기본 설정 |
비고 |
응답 코드 |
HTTP 응답 코드 검증 |
200 |
|
타임아웃 |
요청 후 응답 시간까지 검증 |
5000 (ms) |
|
텍스트 검증 |
응답 데이터(화면)에 특정 텍스트의 존재 여부 검증 |
없음 |
JsonPath, XPath 지원 |
이미지 검증 |
응답 화면에 이미지가 존재하고, 다운로드 가능 여부 검증 |
없음 |
모듈, 가상 브라우저 타입만 지원 |
전파 제외 검증 |
응답 데이터(화면)에 특정 텍스트가 존재할 경우 장애 전파를 하지 않음 |
없음 |
점검 시 사용 |
JsonPath를 사용하여 텍스트 검증 시 배열 데이터에 대한 함수 지원
함수 |
설명 |
출력 타입 |
min() |
배열 데이터 중 최솟값 |
double |
max() |
배열 데이터 중 최댓값 |
double |
sum() |
배열 데이터 총합 |
double |
avg() |
배열 데이터 평균값 |
double |
stddev() |
배열 데이터 표준 편차 |
double |
length() |
배열 데이터 개수 |
integer |
> 응답 바디에 포함된 배열 데이터만 함수 사용 가능 |
|
|
TCP 모니터링
TCP, UDP, ICMP 프로토콜을 활용하여 모니터링할 수 있습니다.
시나리오 타입
배치 모니터링
웹 모니터링, TCP 모니터링과는 달리 Service Monitoring에서 직접 모니터링을 시도하는 것이 아니라, Service Monitoring에서 제공하는 API를 사용자가 호출하고 API의 데이터를 Service Monitoring에서 검증하여 장애 여부를 판단합니다.
검증 방식
- 내용 검증
- 사용자가 사전에 등록한 시나리오로 실제 사용자가 전송한 데이터와 비교해 장애 여부를 판단합니다.
- JsonPath(https://goessner.net/articles/JsonPath/) 방식을 사용해 시나리오 데이터와 실제 데이터를 비교합니다.
- 횟수 검증
- 특정 시간 동안 사용자의 요청 횟수를 확인해 사용자가 설정한 횟수와 비교해 장애 여부를 판단합니다.
사용 예
- 빌드 서버의 빌드 결과를 배치 모니터링으로 전송하여, 빌드 결과를 모니터링할 수 있습니다.
- 일간 배치를 실행한 후 배치 모니터링 API를 호출하도록 하여, 일간 배치의 성공 여부 및 동작 여부를 모니터링할 수 있습니다.
전파 관리
- 일시적 전파 중지란 배포와 같이 이미 알고 있는 장애라면, 장애가 발생해도 장애로 판단하지 않게 하는 기능입니다.
- 일시적 전파 중지는 각 모니터링별로 설정할 수 있습니다.
- 시작 시간과 종료 시간을 설정할 수 있으며 설정한 시간이 지난 후에는 장애가 발생하면 설정된 전파 그룹으로 장애가 전파됩니다.