생성¶
POST /api/v1/field_cfg/add
개요¶
필드 관리를 새로 생성합니다.
Body 요청 파라미터¶
| 파라미터명 | 유형 | 필수 | 설명 |
|---|---|---|---|
| name | string | Y | 필드 이름, 동일한 필드 소스(fieldSource)에서 필드 이름은 중복될 수 없음 Null 허용: False 빈 문자열 허용: False 최대 길이: 256 |
| alias | string | Y | 필드 별칭 Null 허용: False 빈 문자열 허용: False 최대 길이: 256 |
| aliasI18n | object | 필드 별칭 다국어, key는 zh/en/zh-hant/id/ja/ko 지원 Null 허용: False |
|
| unit | string | 단위 정보, fieldType이 string이면 단위는 빈 값으로 설정됨 Null 허용: False 최대 길이: 256 빈 문자열 허용: True |
|
| fieldType | string | 필드 유형 예시: time Null 허용: False 빈 문자열 허용: True 선택 가능한 값: ['text', 'int', 'float', 'boolean', 'string', 'long'] |
|
| category | string | 속성 분류, 시스템 필드(기본 선택), 비즈니스 필드, 기타 포함 예시: system Null 허용: False 빈 문자열 허용: False 선택 가능한 값: ['system', 'business', 'other'] |
|
| fieldSource | string | 필드 소스 예시: time Null 허용: False 빈 문자열 허용: True 선택 가능한 값: ['logging', 'object', 'custom_object', 'keyevent', 'tracing', 'rum', 'security', 'network', 'billing'] |
|
| desc | string | 필드 설명 정보 예시: 호스트 이름 Null 허용: False 빈 문자열 허용: True 최대 길이: 3000 |
|
| descI18n | object | 필드 설명 다국어, key는 zh/en/zh-hant/id/ja/ko 지원 Null 허용: False |
|
| coverInner | boolean | 필드 이름이 시스템 내장 필드와 같을 때 덮어쓸지 여부, true는 덮어쓰기, false는 덮어쓰지 않음 예시: True Null 허용: False |
파라미터 추가 설명¶
1. 요청 파라미터 설명
| 파라미터명 | type | 필수 | 설명 |
|---|---|---|---|
| name | String | 필수 | 필드 이름, 동일한 필드 소스(fieldSource)에서 필드 이름은 중복될 수 없음 |
| alias | String | 필수 | 필드 별칭 |
| desc | String | 설명 | |
| unit | String | 단위 정보, fieldType이 string이면 단위는 빈 값으로 설정됨 | |
| fieldType | String | 필드 유형 | |
| fieldSource | String | 필드 소스, 일반 유형은 빈 문자열로 표시 | |
| coverInner | String | 필드 이름이 시스템 내장 필드와 같을 때 덮어쓸지 여부, true는 덮어쓰기, false는 덮어쓰지 않음 |
단위 정보 추가는 단위 설명을 참조합니다.
2. 응답 파라미터 설명
이 인터페이스가 반환한 content 내용이 need_confirm이면 동일한 소스, 동일한 이름의 내장 필드가 이미 존재함을 의미합니다.
계속 생성하려면 coverInner를 true로 지정해야 하며, 같은 이름의 내장 필드는 숨겨집니다.
3. 필드 관리 사용 설명
3.1. 필드 관리는 필드 조회에 필드 설명을 제공합니다.
다음 함수 조회를 수행할 때 필드 설명을 반환해야 하는 경우 fieldTagDescNeeded(필드 위치는 queries와 같은 레벨)를 true로 지정해야 합니다.
반환된 series에는 value_desc(위치는 values, columns와 같은 레벨) 필드가 추가됩니다.
| 함수 | 필드 소스/fieldSource |
|---|---|
| SHOW_TAG_KEY | "" |
| SHOW_OBJECT_HISTORY_FIELD | "object" |
| SHOW_BACKUP_LOG_FIELD | "logging" |
| SHOW_PROFILING_FIELD | "tracing" |
| SHOW_OBJECT_FIELD | "object" |
| SHOW_LOGGING_FIELD | "logging" |
| SHOW_EVENT_FIELD | "keyevent" |
| SHOW_TRACING_FIELD | "tracing" |
| SHOW_RUM_FIELD | "rum" |
| SHOW_CUSTOM_OBJECT_FIELD | "custom_object" |
| SHOW_CUSTOM_OBJECT_HISTORY_FIELD | "custom_object" |
| SHOW_NETWORK_FIELD | "network" |
| SHOW_SECURITY_FIELD | "security" |
| SHOW_UNRECOVERED_EVENT_FIELD | "keyevent" |
| SHOW_TRACING_METRIC_FIELD | "tracing" |
| SHOW_RUM_METRIC_FIELD | "rum" |
| SHOW_NETWORK_METRIC_FIELD | "network" |
참고: SHOW_FIELD_KEY의 필드 설명은 사용자 정의 메트릭 설정과 datakit 측의 measurements-meta.json을 사용합니다.
3.2. 필드 관리는 조회에 단위 정보를 제공합니다.
dql 조회 시 단위 로드(query_data 결과의 series에 units 추가):
메트릭 데이터 조회 시 로드되는 단위 정보는 사용자 정의 메트릭 필드의 단위로, 공식 메트릭 필드(measurements-meta.json)를 덮어써서 산출됩니다.
비메트릭 데이터 조회 시 로드되는 단위 정보는 필드 관리에 정의된 단위입니다.
3.3. 필드 관리가 단위 정보를 제공할 때의 조회 함수 설명
dql 조회 시 사용하는 함수가 설정된 unitWhiteFuncs 함수 범위에 없으면 단위가 추가되지 않습니다. 예: count
unitWhiteFuncs에는 normal, special 두 가지 유형의 함수가 있습니다. special 함수를 사용하면 단위에 고정 접미사 /s가 추가되며, unit = {"unit": unit, "suffix": "/s"}가 됩니다.
unitWhiteFuncs 함수 설명은 다음과 같습니다:
unitWhiteFuncs:
normal:
- avg
- bottom
- top
- difference
- non_negative_difference
- distinct
- first
- last
- max
- min
- percentile
- sum
- median
- mode
- spread
- moving_average
- abs
- cumsum
- moving_average
- series_sum
- round
- window
special:
- derivative
- non_negative_derivative
- rate
- irate
4. 필드 이름 우선순위 설명
4.1. 사용자 정의 필드는 내장 필드보다 우선합니다.
4.2. 구체적인 소스(fieldSource)가 있는 필드는 일반 소스 필드보다 우선합니다.
요청 예시¶
curl 'https://openapi.guance.com/api/v1/field_cfg/add' \
-H 'DF-API-KEY: <DF-API-KEY>' \
-H 'Accept: application/json, text/plain, */*' \
-H 'Accept-Language: zh' \
-H 'Content-Type: application/json;charset=UTF-8' \
--data-raw '{"name":"test_load","alias":"as_load","fieldType":"float","desc":"temp","fieldSource":"","unit":"","coverInner":false}' \
--compressed
응답¶
{
"code": 200,
"content": {
"alias": "as_load",
"aliasEn": "",
"createAt": 1735628856,
"creator": "wsak_xxx",
"declaration": {
"business": "",
"organization": "default_private_organization"
},
"deleteAt": -1,
"desc": "temp",
"descEn": "",
"fieldSource": "",
"fieldType": "float",
"id": 1791,
"name": "test_load",
"status": 0,
"sysField": 0,
"unit": "",
"updateAt": -1,
"updator": "",
"uuid": "field_0f95016f7254494da088d878ce586477",
"workspaceUUID": "wksp_05adf2282d0d47f8b79e70547e939617"
},
"errorCode": "",
"message": "",
"success": true,
"traceId": "TRACE-5E004BC0-E1E0-459A-8843-6FECBF0353DF"
}