만료된 예외 규칙 삭제
지정한 탐지 시나리오에서 유효 종료 일자(valid_until)가 지난 예외 규칙을 모두 삭제합니다. 특정 GUID만 선택해 삭제하려면 시나리오 예외 규칙 일괄 삭제 API를 사용하세요.
필요 권한
관리자 이상의 계정으로 이용할 수 있습니다.
HTTP 요청
DELETE /api/sonar/exception-rules/expired
cURL 예시
curl -H "Authorization: Bearer <API_KEY>" \
-d type="stream" \
-d scenario_guid="a1b2c3d4-e5f6-7890-abcd-ef1234567890" \
-X DELETE \
https://HOSTNAME/api/sonar/exception-rules/expired
요청 매개변수
| 키 | 필수 | 타입 | 설명 | 비고 |
|---|---|---|---|---|
| type | O | 문자열 | 시나리오 유형 | stream(실시간) 또는 batch(배치) 중 하나. 대소문자 구분 없음 |
| scenario_guid | O | 문자열 | 시나리오 GUID | 36자 |
정상 응답
{
"failures": []
}
- failures (객체 배열): 삭제하지 못한 만료된 예외 규칙 목록. 모두 삭제되면(또는 만료된 규칙이 없으면) 빈 배열입니다
- id (문자열): 삭제에 실패한 예외 규칙 GUID
- reason (문자열): 실패 사유
오류 응답
필수 매개변수가 누락된 경우
HTTP 상태 코드 400 응답
{
"error_code": "null-argument",
"error_msg": "scenario_guid should be not null"
}
scenario_guid가 GUID 형식이 아닌 경우
HTTP 상태 코드 400 응답
{
"error_code": "invalid-param-type",
"error_msg": "scenario_guid should be guid type."
}
type 값이 stream, batch가 아닌 경우
HTTP 상태 코드 400 응답
{
"error_code": "invalid-argument",
"error_msg": "No enum constant com.logpresso.sonar.api.exceptionrule.ExceptionRuleType.FOO"
}
시나리오가 존재하지 않는 경우
HTTP 상태 코드 400 응답
{
"error_code": "invalid-argument",
"error_msg": "scenario-not-found"
}
같은 "시나리오 없음" 상태라도 이 API는 400 오류를 반환합니다. 시나리오 예외 규칙 일괄 삭제 API는 같은 상태에서 guids로 지정한 모든 GUID가 실패 목록에 포함된 200 응답을 반환합니다.
권한이 없는 경우
HTTP 상태 코드 500 응답
{
"error_code": "illegal-state",
"error_msg": "no-permission"
}