PRTG Network Monitor Claude Code 技能
先決條件:安裝 CLI
本技能驅動 prtg-cli 二進位檔。在執行本技能的任何指令之前,你必須確認 CLI 已安裝。 如果缺少,請先安裝:
- macOS / Linux:
bash <(curl -fsSL https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/prtg/install.sh) - Windows (PowerShell):
iwr -useb https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/prtg/install.ps1 | iex - 驗證:
prtg-cli --version - 確保
~/.local/bin(macOS / Linux) 或%LOCALAPPDATA%\Programs\msp-skills(Windows) 在$PATH環境變數中。
安裝程式會將 prtg-cli 和 prtg-mcp 二進位檔下載至 ~/.local/bin
(macOS / Linux) 或 %LOCALAPPDATA%\Programs\msp-skills (Windows)。它不會
向你的代理程式註冊此技能,也不會寫入 MCP 客戶端設定 - 請參閱
mcp-install.md 來進行連線設定。
如果安裝後 --version 回報「找不到命令」,表示執行環境無法在 $PATH 上找到該二進位目錄。在驗證成功之前,請勿繼續執行技能指令。
使用 'core add' 註冊每個客戶的 PRTG 核心一次,然後執行 'fleet alarms'、'fleet status'、'fleet handoff' 或 'fleet drift' 來一次檢視所有核心,並使用 'fleet ack'、'fleet pause' 和 'fleet resume' 來先預覽再跨核心執行操作。所有 v2 操作也都是有類型的指令,你可以使用 --core 參數將其指向單一核心。
何時使用此 CLI
當代理程式需要 PRTG 監控資料或操作時,尤其是跨多個 PRTG 核心 (每個 MSP 客戶一個),請使用此 CLI。這些核心已使用 'core add' 註冊:包含目前警報、輪班交接、維護暫停、確認和資產健康檢查。它也公開了單一核心的所有 PRTG API v2 操作。當某些核心失敗時 (這些行會帶有錯誤),Fleet 指令會以狀態碼 0 退出;只有當所有核心都失敗或傳送的動作失敗時,才會以非零狀態碼退出。請讀取每一行的 error、action 和 failed 欄位。ack、pause 和 resume 在未加上 --yes 之前只會進行預覽。
反觸發條件
請勿將此 CLI 用於:
- 請勿用於不支援 API v2 的 PRTG 叢集或 PRTG Hosted Monitor 安裝 (Paessler 文件指出叢集不支援 API v2);請改用 PRTG 網頁介面或舊版的 v1 HTTP API。
- 請勿用於編輯通知觸發器、讀取事件日誌或工單;API v2 尚未公開這些功能。
- 請勿用於設定 PRTG 伺服器本身 (安裝、升級、核心設定)。
已知限制
fleet alarms、fleet handoff、fleet silenced和fleet drift會讀取 PRTG 的類型化列表 端點 (/sensors/alarms、/sensors、/devices、/groups、/probes)。Paessler 將其標記為 已棄用,改而推薦使用/experimental/*,但仍提供服務且未設定移除版本;這些端點 也適用於 24.3 版之前的核心。sync會讀取相同的列表。- Fleet 指令已針對模擬核心進行驗證,但未在真實的 PRTG 安裝環境中測試。
- PRTG API v2 不適用於 PRTG 叢集;Hosted Monitor 的支援因版本而異。
獨特功能
跨所有核心的統一檢視
-
fleet alarms- 在一個列表中查看所有客戶 PRTG 核心上所有故障、警告和異常的感測器:最嚴重狀態優先 (故障、警告、異常、已確認),然後是較高優先級,再來是最舊的。在輪班開始時或當被問到哪些客戶端出了問題時,使用此指令。
prtg-cli fleet alarms --status down --unacked --agent -
fleet status- 每個客戶核心一行,顯示可達性及按狀態分類的感測器計數,最嚴重的優先。在深入檢查某個核心之前,使用它來快速瀏覽所有客戶的健康狀況。
prtg-cli fleet status --agent -
fleet handoff- 自某個時間點以來跨所有核心的變更:新警報、恢復,以及新的確認或暫停 (附帶人員和原因)。用於輪班交接和「昨晚發生了什麼事」這類問題。
prtg-cli fleet handoff --since 12h --agent -
fleet silenced- 跨所有核心被暫停或確認的所有項目,包含人員、時間、到期時間和原因,並標記那些留下太久的不定期暫停。在維護視窗之後以及每週健康檢查審查中使用,以發現被靜音的故障。
prtg-cli fleet silenced --indefinite --older-than 7d --agent -
fleet exec- 在每個核心上執行任何唯讀 API v2 查詢,並回傳一個合併的表格,其中包含一個 core 欄位。用於專用 fleet 指令未涵蓋的跨客戶問題。
prtg-cli fleet exec /experimental/probes --agent
資產健康檢查
-
fleet drift- 跨核心的 PRTG 資產健康檢查:版本落後於最新核心、即將到期的授權或維護、感測器過度使用、中斷連線的探測器、被拒絕的 API 金鑰以及無法連線的伺服器。用於每週資產審查,取代手動維護的試算表。
prtg-cli fleet drift --within 30d --agent -
fleet sync- 在一次執行中重新整理所有已註冊核心的離線鏡像,每個核心都同步到其獨立的儲存空間。在跨客戶進行離線搜尋或分析之前執行,或每晚從 cron 排程執行。
prtg-cli fleet sync --resources sensors,devices --agent
跨核心的安全操作
-
fleet ack- 使用工單訊息一次確認所有核心上符合條件的故障感測器;會按核心預覽,僅在加上--yes後才傳送 (API 金鑰需要「確認」存取層級)。用於靜音一個橫跨多個客戶的已知事件,而無需開啟每個核心。
prtg-cli fleet ack --filter 'name = "Ping"' --message 'TKT-4411 ISP outage' --duration 2h -
fleet pause- 為了維護視窗,暫停每個核心上符合條件的裝置、群組、感測器或探測器;會按核心預覽,僅在加上--yes後才傳送 (需要「寫入」存取層級)。用於多客戶修補程式之夜,取代在每個核心的網頁 UI 中逐一暫停。
prtg-cli fleet pause --kind device --filter 'name = "fw01"' --duration 2h --message 'Patch night' -
fleet resume- 維護後恢復每個核心上符合條件的物件,並可選擇觸發立即掃描;會按核心預覽,僅在加上--yes後才傳送 (需要「寫入」存取層級)。用於關閉跨客戶的維護視窗,並確認所有項目都已恢復正常。
prtg-cli fleet resume --kind device --filter 'name = "fw01"' --scan
指令參考
ai - 管理 AI
prtg-cli ai aistatus- 回傳 PRTG AI Agent 服務是否已向 Windows 服務控制管理員註冊,以及它是否正在執行。prtg-cli ai analyze-aiincidents- 使用 AI 分析目前活躍的警報,並回傳潛在事件。此端點為實驗性質。
autodiscoveries - 管理自動探索
prtg-cli autodiscoveries- 回傳所有正在執行的自動探索列表。
autodiscoverytasks - 管理自動探索任務
prtg-cli autodiscoverytasks delete-auto-discovery-task- 刪除指定的自動探索任務。此端點為實驗性質。prtg-cli autodiscoverytasks get-auto-discovery-task- 根據指定的任務 ID 回傳自動探索任務。此端點為實驗性質。prtg-cli autodiscoverytasks list-auto-discovery-task-overview- 回傳所有自動探索任務的總覽列表。此端點為實驗性質。prtg-cli autodiscoverytasks modify-auto-discovery-task- 修補自動探索任務。此端點為實驗性質。prtg-cli autodiscoverytasks start-auto-discovery-task- 根據指定的任務 ID 啟動自動探索任務。此端點為實驗性質。
channels - 管理頻道
prtg-cli channels channels- 回傳頻道列表。此端點為實驗性質。prtg-cli channels get- 回傳頻道的指標和設定。prtg-cli channels list- 回傳頻道列表。⚠ 自 PRTG 24.3 起已棄用。prtg-cli channels list-measurements- 取得最近測量值的列表,並包含對應頻道的參考。⚠ 自 PRTG 24.3 起已棄用。
core - 為 --core 和 fleet 指令註冊 PRTG 核心
prtg-cli core add <name> --server <host[:port]> [--tag a,b] [--insecure-tls]- 註冊 (或更新) 一個核心;其金鑰會放入PRTG_FLEET_KEYS作為<name>=<key>,絕不會存在磁碟上;--insecure-tls會僅針對該核心跳過憑證檢查。prtg-cli core list- 列出已註冊的核心,以及每個金鑰環境變數是否已設定 (key_set)。prtg-cli core remove <name>- 移除一個核心,並刪除其本機鏡像和快取。
devices - 管理裝置
prtg-cli devices create-sensor- 在裝置中建立新的感測器。指定感測器類型,例如 'ping'、'http' 或 'paessler.snmp.traffic_sensor'。prtg-cli devices delete- 刪除一個裝置及其所有子感測器和頻道。此端點為實驗性質。prtg-cli devices get- 回傳裝置的指標和設定。prtg-cli devices get-icons- 回傳裝置圖示列表。prtg-cli devices get-templates-experimental- 回傳裝置範本列表。此端點為實驗性質。prtg-cli devices list- 回傳裝置列表。⚠ 自 PRTG 24.3 起已棄用。prtg-cli devices list-experimental- 回傳裝置列表。此端點為實驗性質。prtg-cli devices metascan- 對指定裝置執行指定感測器類型的中繼掃描。某些感測器使用中繼掃描來擷取重要資訊。prtg-cli devices metascan-result- 擷取中繼掃描進度/結果。此端點尚未支援所有感測器類型。prtg-cli devices multi-pause- 暫停所有符合篩選條件的裝置。prtg-cli devices multi-resume- 恢復所有符合篩選條件的裝置。prtg-cli devices multi-scan-now- 觸發掃描所有符合篩選條件的裝置。prtg-cli devices trigger-autodiscovery- 觸發指定裝置的自動探索。此端點為實驗性質。prtg-cli devices update- 編輯裝置。
groups - 管理群組
prtg-cli groups create-device-for- 在群組中建立新裝置。此端點為實驗性質。prtg-cli groups create-for- 在群組中建立新群組。此端點為實驗性質。prtg-cli groups delete- 刪除一個群組及其所有子群組和裝置。此端點為實驗性質。prtg-cli groups get- 回傳群組的指標和設定。prtg-cli groups list- 取得所有符合篩選條件的群組列表。⚠ 自 PRTG 24.3 起已棄用。prtg-cli groups list-experimental- 回傳群組列表。此端點為實驗性質。prtg-cli groups multi-pause- 暫停所有符合篩選條件的群組。prtg-cli groups multi-resume- 恢復所有符合篩選條件的群組。prtg-cli groups multi-scan-now- 觸發掃描所有符合篩選條件的群組。prtg-cli groups trigger-autodiscovery- 觸發指定群組的自動探索。此端點為實驗性質。prtg-cli groups update- 編輯群組。
health - 管理健康狀態
prtg-cli health- 回傳 PRTG 應用程式伺服器的狀態。
libraries - 管理程式庫
prtg-cli libraries- 回傳所有符合篩選條件的程式庫列表。⚠ 自 PRTG 24.3 起已棄用。
lookup-definitions - 管理查閱定義
prtg-cli lookup-definitions get-overview- 回傳查閱定義。⚠ 自 PRTG 24.3.100 起已棄用:此端點仍然有效,但將被取代。prtg-cli lookup-definitions list- 回傳查閱定義列表。⚠ 自 PRTG 24.3 起已棄用。
objects - 管理物件
prtg-cli objects count- 回傳每種類型的物件數量列表。prtg-cli objects list- 取得所有符合篩選條件的探測器、群組、裝置和感測器的列表。⚠ 自 PRTG 24.3 起已棄用。prtg-cli objects multi-delete- 根據指定的篩選條件刪除多個物件。所有子物件也將一併刪除。此端點為實驗性質。prtg-cli objects objects- 回傳所有符合篩選條件的探測器、群組、裝置、感測器和頻道的列表。
probe-network - 探測器網路資訊
prtg-cli probe-network <id>- 回傳探測器的網路資訊。
probes - 管理探測器
prtg-cli probes create-auto-discovery-task- 在探測器上建立新的自動探索任務。此端點為實驗性質。prtg-cli probes create-device-for- 在探測器上建立新裝置。此端點為實驗性質。prtg-cli probes create-group-for- 在探測器中建立新群組。此端點為實驗性質。prtg-cli probes delete- 刪除一個探測器及其所有子群組和裝置。此端點為實驗性質。prtg-cli probes get- 回傳探測器的指標和設定。prtg-cli probes list- 取得所有符合篩選條件的探測器列表。⚠ 自 PRTG 24.3 起已棄用。prtg-cli probes list-experimental- 回傳探測器列表。此端點為實驗性質。prtg-cli probes multi-pause- 暫停所有符合篩選條件的探測器。prtg-cli probes multi-resume- 恢復所有符合篩選條件的探測器。prtg-cli probes multi-scan-now- 觸發掃描所有符合篩選條件的探測器。prtg-cli probes update- 編輯探測器。
schemas - 管理結構描述
prtg-cli schemas get- 回傳一個 OAS 結構描述,可用於其他端點。⚠ 自 PRTG 24.3 起已棄用。prtg-cli schemas get-create-by-parent-id- 回傳一個 OAS 結構描述,用於POST端點。prtg-cli schemas get-kinds-for-parent- 回傳所有可在指定父物件上建立的物件類型列表。此端點為實驗性質。prtg-cli schemas get-read-by-object-id- 回傳用於特定物件GET端點的 OAS 結構描述。prtg-cli schemas get-update-by-object-id- 回傳用於 `PAT