만료된 예외 규칙 삭제

지정한 탐지 시나리오에서 유효 종료 일자(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
요청 매개변수
필수타입설명비고
typeO문자열시나리오 유형stream(실시간) 또는 batch(배치) 중 하나. 대소문자 구분 없음
scenario_guidO문자열시나리오 GUID36자

정상 응답

{
  "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"
}