Lewati ke isi

Pengembangan Skrip / Objek Konektor DFF.CONN / TrueWatch

Objek operasi Konektor TrueWatch terutama menyediakan objek DataWay untuk menulis data serta enkapsulasi OpenAPI.

API Key pada Konektor ini memerlukan peran Administrator

Karena Konektor ini secara otomatis mengambil informasi sensitif seperti Token ruang kerja, untuk operasi seperti pelaporan data selanjutnya.

Oleh karena itu, API Key perlu diberi peran Administrator

Parameter DFF.CONN(...) adalah sebagai berikut:

Parameter Tipe Wajib / Nilai Default Deskripsi
connector_id str Wajib ID Konektor
timeout int/float 10 Waktu tunggu default untuk permintaan HTTP objek operasi saat ini, dalam detik

Silakan merujuk ke dokumentasi OpenAPI:

.dataway

Atribut dataway adalah objek operasi DataWay yang sesuai dengan TrueWatch saat ini, penggunaannya sama dengan objek operasi Konektor DataWay yang dibuat langsung.

Contoh
1
status_code, result = truewatch.dataway.write_by_category(category='metric', measurement='Pemantauan Layanan', tags={'service': 'mysql'}, fields={'mem': 10})

Referensi lengkap:

.is_api_key_valid / .is_api_key_match

Atribut is_api_key_valid mengembalikan apakah API Key pada Konektor saat ini valid; is_api_key_match adalah alias kompatibel untuk nama lama:

Contoh
1
print(truewatch.is_api_key_valid)
Contoh Keluaran
1
True

.workspace

Atribut workspace mengembalikan informasi ruang kerja saat ini:

Contoh
1
2
import json
print(json.dumps(truewatch.workspace, indent=2))
Contoh Keluaran
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
{
  "uuid"        : "wksp_xxxxx",
  "name"        : "xxxxx",
  "rpName"      : "rp2",
  "language"    : "en",
  "timezone"    : "",
  "bossStation" : "HK",
  "billingState": "normal",
  "versionType" : "pay",
  "token"       : "tkn_xxxxx",
  "cliToken"    : "wkcli_xxxxx",
  "<bidang lain diabaikan>": "..."
}

.workspace_uuid

Atribut workspace_uuid mengembalikan UUID ruang kerja saat ini:

Contoh
1
print(truewatch.workspace_uuid)
Contoh Keluaran
1
wksp_xxxxx

.workspace_token

Atribut workspace_token mengembalikan Token ruang kerja saat ini:

Contoh
1
print(truewatch.workspace_token)
Contoh Keluaran
1
tkn_xxxxx

.workspace_language

Atribut workspace_language mengembalikan bahasa ruang kerja saat ini:

Contoh
1
print(truewatch.workspace_language)
Contoh Keluaran
1
en

.do_get(...)

Digunakan untuk mengirim permintaan GET ke TrueWatch OpenAPI, dengan parameter sebagai berikut:

Parameter Tipe Wajib / Nilai Default Deskripsi
path str Wajib Jalur OpenAPI
query dict None Parameter kueri URL
timeout int/float None Waktu tunggu permintaan ini; jika dihilangkan, menggunakan nilai default objek operasi
Contoh
1
2
3
4
import json

result = truewatch.do_get('/api/v1/workspace/get')
print(json.dumps(result, indent=2))
Contoh Keluaran
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
{
  "content": {
    "uuid"        : "wksp_xxxxx",
    "name"        : "xxxxx",
    "rpName"      : "rp1",
    "language"    : "en",
    "timezone"    : "",
    "bossStation" : "HK",
    "billingState": "normal",
    "versionType" : "pay",
    "token"       : "tkn_xxxxx",
    "cliToken"    : "wkcli_xxxxx",
    "<bidang lain diabaikan>": "..."
  }
}

Metode ini mengembalikan objek respons lengkap dari OpenAPI dan tidak mengekstrak content secara otomatis. Metode ini akan melempar pengecualian jika kode status HTTP lebih besar dari atau sama dengan 400.

.do_post(...)

Digunakan untuk mengirim permintaan POST ke TrueWatch OpenAPI, dengan parameter sebagai berikut:

Parameter Tipe Wajib / Nilai Default Deskripsi
path str Wajib Jalur OpenAPI
query dict None Parameter kueri URL
body dict None Isi permintaan JSON
timeout int/float None Waktu tunggu permintaan ini; jika dihilangkan, menggunakan nilai default objek operasi
Contoh
1
2
3
4
body = {
    'name': 'nama baru'
}
result = truewatch.do_post('/api/v1/workspace/modify', body=body)

Metode ini mengembalikan objek respons lengkap dari OpenAPI. Metode ini akan melempar pengecualian jika kode status HTTP lebih besar dari atau sama dengan 400.

Node

Sistem TrueWatch menggunakan arsitektur terdistribusi multi-node. Saat membuat Konektor, Anda perlu menentukan node target secara tepat untuk memastikan fungsi dapat dipanggil dengan normal.

Untuk mendukung kompatibilitas skenario penggunaan sepenuhnya offline, DataFlux Func menggunakan mekanisme pembekuan daftar node berversi - setiap kali sebuah versi dirilis, daftar node TrueWatch terbaru pada saat itu juga disimpan, sehingga memastikan operasi yang stabil di lingkungan offline.

Karena keterbatasan mekanisme di atas, jika TrueWatch kemudian menambahkan node baru, daftar node pada versi DataFlux Func mungkin tidak diperbarui tepat waktu. Disarankan agar pengguna memperhatikan informasi pembaruan versi; jika ingin menggunakan fitur node terbaru, Anda dapat memperoleh dukungan penuh dengan meningkatkan ke versi DataFlux Func terbaru.


Jika menemui situasi di atas, konfigurasi node baru dapat dilakukan dengan cara berikut:

  1. Kueri informasi: kunjungi alamat yang ditentukan untuk mendapatkan parameter konfigurasi lengkap dari node baru TrueWatch;
  2. Deployment manual: pilih mode 'Deployment Pribadi', lalu isi informasi node yang diperoleh secara manual ke kolom yang sesuai pada sistem untuk menyelesaikan konfigurasi.

Disarankan untuk memverifikasi keakuratan parameter sebelum melakukan operasi, memastikan kesesuaian dengan lingkungan saat ini untuk menjamin hasil deployment.

Daftar node yang tersedia saat ini adalah sebagai berikut:

Node Nama Alamat
Sedang mengambil daftar node terbaru...