Skip to content

스크립트 개발 / 커넥터 객체 DFF.CONN / Guance Cloud

Guance Cloud 커넥터 작업 객체는 주로 데이터 쓰기용 DataWay 객체 및 OpenAPI의 캡슐화를 제공합니다.

이 커넥터의 API Key에는 Administrator 역할이 필요합니다

이 커넥터는 이후 데이터 업로드 등의 작업을 위해 작업 공간 Token과 같은 민감한 정보를 자동으로 가져오기 때문입니다.

따라서 API Key에 Administrator 역할을 할당해야 합니다.

DFF.CONN(...) 매개변수는 다음과 같습니다:

매개변수 유형 필수 / 기본값 설명
connector_id str 필수 커넥터 ID
timeout int/float 10 현재 작업 객체의 기본 HTTP 요청 시간 제한(초)

OpenAPI 문서는 다음을 참조하십시오:

.dataway

dataway 속성은 현재 Guance Cloud에 해당하는 DataWay 작업 객체이며, 직접 생성한 DataWay 커넥터 작업 객체와 동일한 방식으로 사용됩니다.

예제
1
status_code, result = guance.dataway.write_by_category(category='metric', measurement='호스트 모니터링', tags={'host': 'web-01'}, fields={'cpu': 10})

전체 내용은 다음을 참조하십시오:

.is_api_key_valid / .is_api_key_match

is_api_key_valid 속성은 현재 커넥터의 API Key가 유효한지 여부를 반환합니다. is_api_key_match는 이전 이름의 호환 별칭입니다.

예제
1
print(guance.is_api_key_valid)
출력 예제
1
True

.workspace

workspace 속성은 현재 작업 공간 정보를 반환합니다:

예제
1
2
import json
print(json.dumps(guance.workspace, indent=2))
출력 예제
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
{
  "uuid"        : "wksp_xxxxx",
  "name"        : "xxxxx",
  "rpName"      : "rp1",
  "language"    : "zh",
  "timezone"    : "",
  "bossStation" : "CN",
  "billingState": "normal",
  "versionType" : "pay",
  "token"       : "tkn_xxxxx",
  "cliToken"    : "wkcli_xxxxx",
  "<기타 필드 생략>": "..."
}

.workspace_uuid

workspace_uuid 속성은 현재 작업 공간의 UUID를 반환합니다:

예제
1
print(guance.workspace_uuid)
출력 예제
1
wksp_xxxxx

.workspace_token

workspace_token 속성은 현재 작업 공간의 Token을 반환합니다:

예제
1
print(guance.workspace_token)
출력 예제
1
tkn_xxxxx

.workspace_language

workspace_language 속성은 현재 작업 공간의 언어를 반환합니다:

예제
1
print(guance.workspace_language)
출력 예제
1
zh

.do_get(...)

Guance Cloud OpenAPI에 GET 요청을 보내는 데 사용됩니다. 매개변수는 다음과 같습니다:

매개변수 유형 필수 / 기본값 설명
path str 필수 OpenAPI 경로
query dict None URL 쿼리 매개변수
timeout int/float None 이번 요청 시간 제한. 생략 시 작업 객체의 기본값 사용
예제
1
2
3
4
import json

result = guance.do_get('/api/v1/workspace/get')
print(json.dumps(result, indent=2))
출력 예제
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
{
  "content": {
    "uuid"        : "wksp_xxxxx",
    "name"        : "xxxxx",
    "rpName"      : "rp1",
    "language"    : "zh",
    "timezone"    : "",
    "bossStation" : "CN",
    "billingState": "normal",
    "versionType" : "pay",
    "token"       : "tkn_xxxxx",
    "cliToken"    : "wkcli_xxxxx",
    "<기타 필드 생략>": "..."
  }
}

이 메서드는 OpenAPI의 전체 응답 객체를 반환하며, content를 자동으로 추출하지 않습니다. HTTP 상태 코드가 400 이상이면 예외가 발생합니다.

.do_post(...)

Guance Cloud OpenAPI에 POST 요청을 보내는 데 사용됩니다. 매개변수는 다음과 같습니다:

매개변수 유형 필수 / 기본값 설명
path str 필수 OpenAPI 경로
query dict None URL 쿼리 매개변수
body dict None JSON 요청 본문
timeout int/float None 이번 요청 시간 제한. 생략 시 작업 객체의 기본값 사용
예제
1
2
3
4
body = {
    'desc': '새 설명'
}
result = guance.do_post('/api/v1/workspace/modify', body=body)

이 메서드는 OpenAPI의 전체 응답 객체를 반환합니다. HTTP 상태 코드가 400 이상이면 예외가 발생합니다.

노드

Guance Cloud에는 사용 가능한 여러 노드가 있으며, Guance Cloud 커넥터를 생성할 때 해당 Guance Cloud 노드를 지정해야 합니다.

DataFlux Func 자체는 완전한 오프라인 사용을 지원하기 위해, 각 버전이 출시될 때 그 시점의 최신 Guance Cloud 노드 목록을 저장합니다.

따라서 Guance Cloud에 새 노드가 추가된 후, DataFlux Func에 즉시 반영되지 않는 경우가 있을 수 있습니다.


이러한 경우 다음 주소에서 Guance Cloud 새 노드 관련 구성을 확인한 후, '프라이빗 배포'를 선택하여 수동으로 입력할 수 있습니다.

현재 사용 가능한 노드 목록은 다음과 같습니다:

노드 이름 주소
최신 노드 목록을 가져오는 중...