가져오기¶
POST /api/v1/log_index_cfg/import
개요¶
로그 인덱스 템플릿을 일괄 가져오며, 이름 중복 확인, 건너뛰기 및 덮어쓰기를 지원합니다.
Body 요청 파라미터¶
| 파라미터명 | 유형 | 필수 | 설명 |
|---|---|---|---|
| logIndexes | array | Y | 로그 인덱스 템플릿 목록 비어 있을 수 없음: False |
| logIndexes[*] | None | ||
| logIndexes[*].name | string | Y | 인덱스 이름 비어 있을 수 없음: False |
| logIndexes[*].desc | string | 인덱스 설명 비어 있을 수 없음: False |
|
| logIndexes[*].directIndex | boolean | 네이티브 직접 쓰기 인덱스 여부 비어 있을 수 없음: False |
|
| logIndexes[*].isFullLineIndex | int | 전체 행 인덱스 여부; 0/false는 message 필드 인덱스 유지, 1/true는 전체 행 인덱스, 기본값 0; 로그 저장소가 scopedb인 워크스페이스만 1로 설정 가능 비어 있을 수 없음: False |
|
| logIndexes[*].conditions | string | 일치 조건 비어 있을 수 없음: False |
|
| logIndexes[*].duration | string | 보존 기간 비어 있을 수 없음: False |
|
| logIndexes[*].storagePolicy | json | 장기 보존 정책 비어 있을 수 없음: False |
|
| logIndexes[*].extend | json | 확장 구성 비어 있을 수 없음: False |
|
| logIndexes[*].setting | json | 저장소 설정 비어 있을 수 없음: False |
|
| logIndexes[*].fields | array | 필드 매핑 구성 비어 있을 수 없음: False |
|
| logIndexes[*].is_disable | boolean | 비활성화 여부 비어 있을 수 없음: False |
|
| repeatLogIndexNameOp | string | 로그 인덱스 이름 중복 처리 전략 비어 있을 수 없음: False 선택 가능 값: ['check', 'skip', 'recover'] |
파라미터 추가 설명¶
이 API는 로그 인덱스 템플릿만 별도로 가져오는 데 사용됩니다.
호출 흐름
logIndexes배열을 준비합니다. 각 요소는 하나의 로그 인덱스 템플릿을 나타냅니다.repeatLogIndexNameOp를 통해 동일한 이름의 인덱스가 있을 때의 처리 전략을 지정합니다.- 전략이
check이고 동일한 이름의 인덱스가 존재하면 API는repeat_name을 반환하며 저장소에 기록하지 않습니다.
repeatLogIndexNameOp 설명
| 값 | 설명 |
|---|---|
| check | 중복만 확인; 동일한 이름의 인덱스가 있으면 repeat_name 반환 |
| skip | 이미 존재하는 동일한 이름의 인덱스는 건너뛰고, 존재하지 않는 인덱스만 가져오기 |
| recover | 대상 워크스페이스에 동일한 이름의 인덱스가 있을 경우, 가져오기 템플릿으로 해당 인덱스 구성을 덮어쓰기 |
특수 규칙
name=default인 템플릿은 무시되며 가져오기가 실행되지 않습니다.- 외부 인덱스 템플릿은 무시되며 가져오기가 실행되지 않습니다.
recover는 동일한 이름의 내부 인덱스만 덮어쓰며,default는 작업하지 않습니다.
템플릿 필드
| 필드 | 유형 | 필수 | 설명 |
|---|---|---|---|
| name | string | 예 | 인덱스 이름 |
| desc | string | 아니요 | 인덱스 설명 |
| directIndex | boolean | 아니요 | 네이티브 직접 쓰기 인덱스 여부 |
| isFullLineIndex | int | 아니요 | 전체 행 인덱스 여부, 0은 message 필드 인덱스 유지, 1은 전체 행 인덱스, 기본값 0; 로그 저장소가 scopedb인 워크스페이스만 1로 설정 가능 |
| conditions | string | 아니요 | 일치 조건 |
| duration | string | 아니요 | 보존 기간 |
| storagePolicy | json | 아니요 | 장기 보존 정책 |
| extend | json | 아니요 | 확장 구성 |
| setting | json | 아니요 | 저장소 설정 |
| fields | array | 아니요 | 필드 매핑 |
| is_disable | boolean | 아니요 | 비활성화 여부 |
반환 설명
- 가져오기 성공 시
successCount,failCount반환 - 일부 객체가 실패한 경우, 응답에
failedNames가 추가로 포함됩니다. check모드에서 중복이 발견되면repeat_name반환
요청 예시¶
curl 'https://openapi.guance.com/api/v1/log_index_cfg/import' \
-H 'DF-API-KEY: <DF-API-KEY>' \
-H 'Content-Type: application/json' \
--data-raw '{"repeatLogIndexNameOp":"recover","logIndexes":[{"name":"app-log","desc":"애플리케이션 로그 인덱스","directIndex":false,"isFullLineIndex":0,"conditions":"","duration":"7d","storagePolicy":{},"extend":{},"setting":{},"fields":[],"is_disable":false}]}'