KB Management API 用戶指南
本文檔介紹如何使用 API 透過外部腳本(如
giipAgentWin)管理知識庫 (KB) 系統。
1. 概述
透過呼叫 KB API (
giipKb),您可以存儲和查詢特定伺服器 (lssn) 或資料庫 (mdb_id) 的故障應對經驗、配置資訊等。
2. 基本資訊
- 介面地址 (Endpoint):
https://giipfaw.azurewebsites.net/api/giipKb - 身份驗證: 必須透過
請求頭傳遞會話令牌 (AK/SK)。x-api-key
3. 功能說明 (Endpoints)
3.1 註冊 KB (POST)
註冊新的知識文件。
請求載荷 (JSON):
{ "csn": 100, "refType": "LSSN", "lssn": 1234, "title": "伺服器內核優化指南", "content": "# 指南\n如何修改內核參數...", "tags": "kernel,tuning,linux" }
: 可選refType
(伺服器),LSSN
(資料庫),MDB
(通用)GENERAL
3.2 修改 KB (PUT)
修改現有的知識文件。
請求載荷 (JSON):
{ "kbSn": 42, "title": "修改後的標題", "content": "更新後的內容...", "tags": "linux,updated" }
3.3 查詢 KB (GET)
查詢符合過濾條件的 KB 列表或詳細資訊。
查詢參數:
: 查詢特定文件時使用kbSn
: 查詢與特定伺服器相關的知識lssn
: 查詢與特定資料庫相關的知識mdb_id
: 搜索關鍵詞searchKeyword
3.4 刪除 KB (DELETE)
刪除知識文件。
查詢參數:
: 要刪除的文件編號kbSn
4. 基於 SK 的 API 使用方法 (建議 giipAgent 使用)
對於像
giipAgent 這樣的常駐程式或自動化腳本,建議使用沒有會話過期的安全密鑰 (SK)。基於 SK 的呼叫透過整合 API 端點 (giipApiSk3) 進行。
- 介面地址 (Endpoint):
https://giipfaw.azurewebsites.net/api/giipApiSk3 - 請求方法:
(form-urlencoded)POST
4.1 主要參數
: 已頒發的安全密鑰 (Secret Key)sk
: 要執行的命令 (可選text
,KbCreate
,KbUpdate
,KbDelete
,KbGet
)KbList
: 傳遞給 API 的詳細資料 (JSON 字串)jsondata
4.2 呼叫示例 (PowerShell)
$sk = "YOUR_SECRET_KEY" $url = "https://giipfaw.azurewebsites.net/api/giipApiSk3" # 註冊 KB 示例 $body = @{ sk = $sk text = "KbCreate jsondata" jsondata = (@{ csn = 100 refType = "LSSN" lssn = 1234 title = "Agent 自動註冊知識" content = "這是從 Agent 自動分析的內容。" tags = "agent,auto" } | ConvertTo-Json -Compress) } $response = Invoke-RestMethod -Uri $url -Method Post -Body $body Write-Host "KB Registered. kbSn: $($response.data[0].kbSn)"
5. giipAgentWin
自動化示例 (基於 AK)
giipAgentWin是在
giipAgentWin 腳本中將已完成的任務日誌透過 AK 自動註冊為 KB 的示例(當登錄會話有效時)。
$ak = "YOUR_SESSION_AK" $url = "https://giipfaw.azurewebsites.net/api/giipKb" $body = @{ title = "自動化分析結果 - $(Get-Date -Format 'yyyyMMdd')" content = "# 分析結果`n環境檢查已完成。" refType = "LSSN" lssn = 1201 csn = 0 tags = "auto,diag" } | ConvertTo-Json -Compress $headers = @{ "x-api-key" = $ak "Content-Type" = "application/json" } $response = Invoke-RestMethod -Uri $url -Method Post -Headers $headers -Body $body Write-Host "KB Registered. kbSn: $($response.kbSn)"
[!TIP] 您可以在
前端的伺服器/資料庫詳情頁面中立即查看透過此 API 註冊的內容。giipv3
疑難排解
| 症狀 | 原因 | 解決 |
|---|---|---|
| 返回 401 Unauthorized | 請求頭中沒有有效的 AK/SK 令牌,或會話已過期 | 在請求頭中放入有效令牌,或切換到無會話過期的基於 SK 的 呼叫 |
| SK 呼叫時命令未執行 | 欄位不是 格式 | 在 中準確填寫命令(////)和 關鍵詞 |
| 註冊/修改時資料缺失 | 不是 // 之一,或缺少 | 僅使用允許的三個 值之一,並為 PUT/DELETE 指定有效的 |
解析錯誤 | 中的換行或引號未跳脫 | 使用 等序列化為 JSON 字串後再發送 |