스트림 쿼리 생성

새 스트림 쿼리를 생성합니다. 이 작업은 관리자 권한을 요구합니다.

HTTP 요청

POST /api/sonar/stream-queries
cURL 예시
curl -H "Authorization: Bearer <API_KEY>" \
     -d name="test_stream_query" \
     -d description="테스트용 스트림 쿼리" \
     -d source_type="table" \
     -d source="my_table,another_table" \
     -d interval=60 \
     -d query="table limit=100 | stats count" \
     -d is_enabled=true \
     -d is_async=false \
     -X POST "https://HOSTNAME/api/sonar/stream-queries"
요청 매개변수
필수타입설명비고
guidX문자열스트림 쿼리 GUID36자. 미설정 시 무작위 생성
nameO문자열스트림 쿼리 이름최소 1자, 최대 50자
descriptionX문자열설명최대 2,000자
is_enabledX불리언활성화 여부기본값: true
source_typeO문자열소스 타입table, logger, stream 중 하나
sourceX문자열 목록소스 목록쉼표(,)로 구분된 소스 목록
intervalO32비트 정수새로 고침 주기단위: , 0 이상의 값
queryX문자열쿼리문미설정 시 빈 쿼리
is_asyncX불리언비동기 모드 여부기본값: false

정상 응답

{}

오류 응답

필수 매개변수가 누락된 경우

HTTP 상태코드 400 응답

{
  "error_code": "null-argument",
  "error_msg": "name should be not null"
}
매개변수 값의 길이가 잘못된 경우

HTTP 상태코드 400 응답

{
  "error_code": "invalid-argument",
  "error_msg": "'name' must be shorter than or equal to 50 characters."
}
interval 값이 음수인 경우

HTTP 상태코드 400 응답

{
  "error_code": "invalid-argument",
  "error_msg": "interval should be non-negative: -1"
}
지원되지 않는 source_type인 경우

HTTP 상태코드 400 응답

{
  "error_code": "invalid-argument",
  "error_msg": "unsupported source type: invalid_type"
}
스트림 쿼리 GUID가 중복된 경우

HTTP 상태코드 500 응답

{
  "error_code": "illegal-state",
  "error_msg": "duplicated stream query guid: 12345678-1234-1234-1234-123456789012"
}
관리자 권한이 아닌 경우

HTTP 상태코드 500 응답

{
  "error_code": "illegal-state",
  "error_msg": "no-permission"
}
query에 구문 오류가 있는 경우

HTTP 상태코드 400 응답

{
  "error_code": "query-parse-exception",
  "error_msg": "syntax error at line 1: unexpected token"
}