observability-manage-slos은(는) 무엇을 하나요?
Kibana API를 사용하여 Elastic Observability에서 SLO를 생성하고 관리합니다. SLI 정의, 오류 예산 설정 또는 SLO 수명 주기 관리 시 사용하세요.
개요
이 스킬은 Elastic Observability 환경에서 SLO(서비스 수준 목표)를 프로그래밍 방식으로 관리하는 방법을 제공합니다. SLO 정의, SLI(서비스 수준 지표) 구성, 오류 예산 계산 및 SLO 상태 모니터링을 지원합니다.
사전 요구 사항
- Elastic Cloud 또는 자체 관리형 Elastic Stack 인스턴스
- Kibana API에 접근할 수 있는 API 키 또는 사용자 인증 정보
- Elastic Observability가 활성화된 대상 Kibana 공간
구성
스킬은 일반적으로 다음 환경 변수를 사용하여 Kibana API 엔드포인트와 인증을 구성합니다.
KIBANA_URL- Kibana 인스턴스의 기본 URLKIBANA_API_KEY- API 인증을 위한 API 키
사용법
SLO 생성
새 SLO를 생성하려면 다음 매개변수와 함께 POST 요청을 Kibana API에 보냅니다.
{
"name": "내 서비스 가용성",
"description": "프로덕션 서비스 가용성 99.9%",
"indicator": {
"type": "sli.kql.custom",
"params": {
"index": "my-service-logs-*",
"filter": "service.name: my-service AND event.outcome: success",
"good": 1,
"total": 1,
"timestampField": "@timestamp"
}
},
"timeWindow": {
"duration": "30d",
"type": "rolling"
},
"budgetingMethod": "occurrences",
"objective": {
"target": 99.9
}
}
SLO 목록 조회
GET kbn:/api/observability/slos
SLO 업데이트
PUT kbn:/api/observability/slos/{sloId}
SLO 삭제
DELETE kbn:/api/observability/slos/{sloId}
예제
오류 예산 확인
GET kbn:/api/observability/slos/{sloId}/status
SLO 요약 가져오기
GET kbn:/api/observability/slos/_summary
참고 사항
- 모든 API 호출에는 적절한
kbn-xsrf: true헤더가 필요합니다. - SLO ID는 생성 시 자동으로 할당되며 업데이트 및 삭제 작업에 필요합니다.
- 오류 예산은 SLO에 정의된 기간(window)을 기준으로 계산됩니다.
- SLI 유형에는 사용자 정의 KQL 쿼리, 메트릭 임계값, 기타 사전 정의된 지표가 포함될 수 있습니다.
문제 해결
- 401 Unauthorized: API 키 또는 사용자 인증 정보가 올바르게 구성되었는지 확인합니다.
- 404 Not Found: SLO ID가 존재하는지 확인합니다.
- 400 Bad Request: 요청 페이로드가 예상 스키마와 일치하는지 확인합니다. Kibana API 문서를 참조하세요.