콘텐츠로 이동

기본 유형 인덱스 생성



POST /api/v1/log_index_cfg/add

개요

기본 저장 유형 인덱스 구성을 생성합니다.

본문 요청 매개변수

매개변수 이름 유형 필수 설명
name string Y 인덱스 이름
예시: xxx
빈 값 허용: False
최대 길이: 256
desc string 인덱스 설명
예시: xxx
빈 값 허용: False
빈 문자열 허용: True
최대 길이: 1024
extend json 프런트엔드 사용자 정의 데이터
빈 값 허용: True
duration string 데이터 보존 기간
빈 값 허용: False
예시: 7d
storagePolicy json 장기 저장 정책. 로그는 scopedb 저장 워크스페이스에서만 활성화할 수 있습니다. pay, enterprise, unlimited는 로그 장기 저장을 지원하며, enterprise/unlimited의 logging은 최대 1800d입니다. enterprise/unlimited의 rp는 장기 저장 기간(최대 3600d)을 사용자 정의할 수 있습니다. unlimited는 BossAccountSet이 활성화된 경우 metric_point_total 과금 유형에서만 지원되며, 비활성화된 경우 metric_point_total로 처리됩니다. longStorageEnabled와 longStorageDuration을 포함합니다.
예시: {'longStorageEnabled': True, 'longStorageDuration': '180d'}
빈 값 허용: False
directIndex boolean 네이티브 직접 쓰기 인덱스, 기본값 false, 2025-06-25 릴리스에서 추가됨
빈 값 허용: False
isFullLineIndex int 전체 행 인덱스 여부. 정수 0/1 또는 불리언 false/true를 지원합니다. Scopedb에서 새 인덱스는 기본적으로 1/true만 지원하며, 다른 로그 저장소는 기존 기본값 0을 유지하고 1로 설정할 수 없습니다.
빈 값 허용: False
setting json 관련 구성 정보
빈 값 허용: False
setting.hot_retention int Volcengine 스토리지, 표준 스토리지-핫 스토리지
빈 값 허용: False
setting.cold_retention int Volcengine 스토리지, 저빈도 스토리지-콜드 데이터
빈 값 허용: False
setting.archive_retention int Volcengine 스토리지, 아카이브 스토리지-아카이브 데이터
빈 값 허용: False

매개변수 추가 설명

1. 요청 매개변수 설명

매개변수 이름 type 필수 설명
name String 필수 인덱스 이름
desc String 인덱스 설명
extend Json 프런트엔드 에코(표시)용 확장 정보
duration Json 인덱스 총 저장 기간, 예시: 60d
directIndex Boolean 네이티브 직접 쓰기 인덱스, 기본값 false, 2025-06-25 릴리스에서 추가됨
setting Json 로그가 Volcengine 스토리지인 경우 인덱스 구성 정보

2. setting 내 매개변수 설명

매개변수 이름 type 필수 설명
hot_retention int 필수 표준 스토리지 - 핫 데이터, 하루 단위 시간이어야 함, 단위: 시간(h)
cold_retention int 저빈도 스토리지 - 콜드 데이터, 하루 단위 시간이어야 함, 단위: 시간(h)
archive_retention int 아카이브 스토리지 - 아카이브 데이터, 하루 단위 시간이어야 함, 단위: 시간(h)

2.1. Volcengine 스토리지 기간 제한:
표준 스토리지: 핫 데이터 스토리지, 데이터 범위: 1-1800일. 저빈도 스토리지가 있으면 데이터 범위: 7-1800일. 아카이브 스토리지가 있으면 데이터 범위: 30-1800일.
저빈도 스토리지: 콜드 데이터 스토리지, 데이터 범위: 30-1800일.
아카이브 스토리지: 아카이브 데이터 등의 스토리지, 데이터 범위: 60-1800일.
2.2. Volcengine 스토리지 기간 제한:
총 저장 기간(표준 스토리지 + 저빈도 스토리지 + 아카이브 스토리지)은 1800일을 초과할 수 없습니다.


3. extend 내 매개변수 설명

매개변수 이름 type 필수 설명
matchMode String 일치 모드, 선택 값: basic, advanced. 기본값은 basic으로 처리
filters Array[dict] 일반 일치 필터 조건 목록. 네이티브 직접 쓰기 인덱스는 구성할 필요가 없으며, advanced 모드에서는 빈 배열 전달을 권장
advancedFilter Dict 고급 일치 조건 트리, matchMode=advanced일 때 적용
extendFields Array 인덱스 확장 필드 정보
extendFields[*].tag String 필수 키 필드 이름
extendFields[*].alias String 키 필드 별칭
services String 일치 서비스

4. extend.filters 본문 구조 설명

매개변수 이름 type 필수 설명
condition string 이전 필터 조건과의 관계, 선택 값: and, or. 기본값: and
name string 필터링할 필드 이름
operation string 연산자, 선택 값: in, not_in
value array 값 목록
value[#] string/int/boolean 문자열/숫자/불리언 유형 가능

5. extend.advancedFilter 본문 구조 설명

매개변수 이름 type 필수 설명
type string 필수 루트 노드는 고정적으로 group
condition string 필수 현재 그룹 내 하위 노드 관계, 선택 값: and, or
filters array 필수 하위 노드 목록, 요소는 rule 또는 group일 수 있음
filters[#].type string 필수 노드 유형, 선택 값: rule, group
filters[#].name string rule 필수 로그 필드 이름
filters[#].operation string rule 필수 연산자, 선택 값: =, !=, in, not_in, match, not_match, wildcard, not_wildcard, regexp, not_regexp, >, <, >=, <=, exist, not_exist
filters[#].value array rule 필수 값 목록, exist / not_exist는 빈 배열 사용

matchMode=advanced일 때 백엔드는 DQL where 스타일로 conditions를 생성합니다(예: IN, NOT IN, = match('xxx'), = wildcard('xxx')). 일반 filters는 기존 생성 형식을 유지합니다.


요청 예시

curl 'https://openapi.guance.com/api/v1/log_index_cfg/add' \
-H 'Accept: application/json, text/plain, */*' \
-H 'Accept-Language: zh' \
-H 'Content-Type: application/json;charset=UTF-8' \
-H 'DF-API-KEY: <DF-API-KEY>' \
--data-raw '{"name":"test_index","duration":"14d","isFullLineIndex":1,"extend":{"filters":[{"condition":"and","name":"host","operation":"in","value":["custom_host1"]}]}}' \
--compressed

응답

{
    "code": 200,
    "content": {
        "conditions": "{  `host` in [ 'custom_host1' ] }",
        "createAt": 1698751853,
        "creator": "xxx",
        "deleteAt": -1,
        "duration": "14d",
        "extend": {
            "filters": [
                {
                    "condition": "and",
                    "name": "host",
                    "operation": "in",
                    "value": [
                        "custom_host1"
                    ]
                }
            ]
        },
        "exterStoreName": "",
        "exterStoreProject": "",
        "externalResourceAccessCfgUUID": "",
        "id": null,
        "isBindCustomStore": 0,
        "isFullLineIndex": 1,
        "isPublicNetworkAccess": 0,
        "name": "test_index",
        "queryType": "logging",
        "region": "",
        "setting": {},
        "sortNo": 3,
        "status": 0,
        "storeType": "",
        "updateAt": 1698751853,
        "updator": "xxx",
        "uuid": "lgim_xxxx32",
        "workspaceUUID": "wksp_xxxx32"
    },
    "errorCode": "",
    "message": "",
    "success": true,
    "traceId": "TRACE-600346C3-6C89-4391-9CA3-2152D10149D8"
}

문서 평가

이 페이지가 도움이 되었나요?