파서 생성
새 파서를 생성합니다. 기존 파서의 설정은 파서 수정 API로 변경할 수 있습니다.
필요 권한
관리자 이상의 계정으로 이용할 수 있습니다.
HTTP 요청
POST /api/sonar/parsers
cURL 예시
curl -H "Authorization: Bearer <API_KEY>" \
-d 'code=test' \
-d 'name=테스트' \
-d 'factory_name=fortigate' \
-d 'configs={"ver":"2"}' \
-X POST \
https://HOSTNAME/api/sonar/parsers
요청 매개변수
| 키 | 필수 | 타입 | 설명 | 비고 |
|---|---|---|---|---|
| code | O | 문자열 | 파서 식별자 | 최소 1자, 최대 50자. 공백을 포함할 수 없습니다. |
| name | O | 문자열 | 파서 화면 표시 이름 | 최소 1자, 최대 50자 |
| factory_name | O | 문자열 | 파서 유형 식별자 | 파서 유형 목록 조회 참조 |
| description | X | 문자열 | 파서 설명 | 최대 2,000자 |
| schema_code | X | 문자열 | 정규화 스키마 코드 | 최대 50자. 정규화 파서인 경우 지정 |
| configs | X | 문자열 키/값 | 설정 키/값 | JSON 형식 문자열. 파서 유형별 설정 명세 참조 |
정상 응답
{
"code": "test"
}
- code (문자열): 생성된 파서 식별자
오류 응답
필수 매개변수가 누락된 경우
HTTP 상태 코드 400 응답
{
"error_code": "null-argument",
"error_msg": "code should be not null"
}
매개변수 값의 길이가 잘못된 경우
HTTP 상태 코드 400 응답
{
"error_code": "invalid-argument",
"error_msg": "'code' must be shorter than or equal to 50 characters."
}
code에 공백이 포함된 경우
HTTP 상태 코드 400 응답
{
"error_code": "invalid-argument",
"error_msg": "parser code should not contain space and should be not null"
}
필수 설정이 누락된 경우
HTTP 상태 코드 400 응답
{
"error_code": "invalid-argument",
"error_msg": "parser config [query] should be not null"
}
파서 식별자가 중복된 경우
HTTP 상태 코드 500 응답
{
"error_code": "illegal-state",
"error_msg": "duplicated parser code: test"
}
파서 이름이 중복된 경우
HTTP 상태 코드 500 응답
{
"error_code": "illegal-state",
"error_msg": "duplicated parser name: 테스트"
}
파서 유형이 존재하지 않는 경우
HTTP 상태 코드 500 응답
{
"error_code": "illegal-state",
"error_msg": "parser factory not found: unknown"
}
정규화 스키마가 존재하지 않는 경우
HTTP 상태 코드 500 응답
{
"error_code": "illegal-state",
"error_msg": "schema not found: unknown"
}
권한이 없는 경우
HTTP 상태 코드 500 응답
{
"error_code": "illegal-state",
"error_msg": "no-permission"
}