跳轉到

指令碼開發 / 聯結器物件 DFF.CONN / 觀測雲

觀測雲聯結器操作物件主要提供用於資料寫入的 DataWay 物件以及 OpenAPI 的封裝。

此聯結器的 API Key 需要 Administrator 角色

由於本聯結器會自動獲取工作空間 Token 等敏感資訊,以供後續上報資料等操作。

因此,需要為 API Key 分配 Administrator 角色

DFF.CONN(...) 引數如下:

引數 型別 必須 / 預設值 說明
connector_id str 必須 聯結器 ID
timeout int/float 10 當前操作物件的預設 HTTP 請求超時時間,秒

OpenAPI 文件請參考:

.dataway

dataway 屬性為當前觀測雲對應的 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(...)

用於向觀測雲 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(...)

用於向觀測雲 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 時丟擲異常。

節點

觀測雲具有多個節點可供使用,在建立觀測雲聯結器時,需要指定對應的觀測雲節點。

DataFlux Func 本身為了保證支援完全離線使用,每個版本在釋出時都會儲存一份當時最新的觀測雲節點列表。

因此可能存在觀測雲新增節點後,不能在 DataFlux Func 中及時體現的情況。


遇到此類情況,可以在下列地址中查閱觀測雲新節點相關配置,然後選擇「私有部署」後手工填寫。

當前可用的節點列表如下:

節點 名稱 地址
正在獲取最新節點列表...