伺服器儀表板

PostgreSQL 擴充套件中的伺服器儀表板顯示 PostgreSQL 連線細節、即時及歷史效能指標,以及支援的管理工具。 你可以監控伺服器活動、開啟查詢、啟動結構視覺化工具,並存取 Azure 伺服器設定,全部都不用離開編輯器。 儀表板在 Visual Studio Code游標中運作方式相同;只有從儀表板的 AI 按鈕開啟的 AI 聊天面板有所不同。

Tip

先設定你的伺服器連線。 參見「連結與身份」。 關於 Azure 專屬的管理操作,請參見 Azure 伺服器管理

打開伺服器儀表板

  1. 連線 樹中,右鍵點擊伺服器節點。
  2. 選取儀表板

儀表板會在一個名為 <profileName> - Dashboard 的分頁開啟,並顯示頁面標頭 <connectionLabel> |績效儀表板

Note

伺服器儀表板是預設啟用的預覽功能。 要停用它,請在你的 VS Code 設定中設定pgsql.enableServerDashboard為 。false

伺服器詳細資料卡片

儀表板頂端顯示一張詳細卡片,總結目前的連線狀況。

Field Description
Server PostgreSQL 伺服器的地址。
版本 伺服器回報的 PostgreSQL 版本。
通訊埠 用於連線的 TCP 埠(預設為 5432)。
User 這個連線的認證使用者。
預設資料庫 連線所鎖定的資料庫(預設為 postgres)。
狀態 (僅限 Azure)適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器的目前狀態,例如為 ReadyStoppedStarting。 選擇值旁的刷新按鈕以更新狀態。

Note

State 欄位僅出現在 適用於 PostgreSQL 的 Azure 資料庫 靈活伺服器連線時。

工具列

儀表板頂端的工具列提供快速存取常見操作。 有些按鈕只有在符合特定條件時才會出現。

連線動作

Button Description
[連接] 當伺服器斷線時會出現。 選擇它以重新建立連線。 連線時,按鈕會變成 「連線中...」。
行動>斷開連接 斷開伺服器連線。 連接時,從 動作 下拉選單即可取得。

當伺服器斷線時,工具列中的資料庫相關按鈕會被停用,並顯示提示:「需要資料庫連線。 連接資料庫以啟用此功能。」

資料庫動作

Button Description
新查詢 在這個伺服器上開啟一個新的查詢編輯器,連接到資料庫。 資料庫選擇器讓你選擇目標資料庫。
Connect AI / Connect Copilot 開啟一個針對該伺服器架構與資料的代理模式會話。 開啟的聊天面板,在 Visual Studio Code 中是 GitHub Copilot Chat,在 Cursor 中則是 Cursor 原生的 AI 面板。 請參見 Copilot 整合
視覺化結構 在此伺服器上啟動資料庫的結構視覺化工具。 資料庫選擇器讓你選擇目標資料庫。 參見 Schema visualizer

Azure 伺服器動作

對於 適用於 PostgreSQL 的 Azure 資料庫 靈活伺服器連線,動作下拉選單包含伺服器生命週期操作,工具列則顯示額外入口網站按鈕。

Button Description
行動>開始 啟動一個停止的 Azure 伺服器。
行動>停下 停止一個正在運行的 Azure 伺服器。 停止會解除配置運算資源,並暫停運算計費。
行動>重啟 重新啟動 Azure 伺服器。 在更改需要重啟的參數後使用這個功能。
Azure 入口網站 在預設瀏覽器中開啟 Azure 入口網站中的伺服器管理頁面。

Note

啟動停止重新啟動的動作需要對伺服器資源施加適當的 Azure 角色基礎存取控制(RBAC)權限。

伺服器設定選單

對於支援的 Azure 連線,工具列中會出現一個伺服器設定下拉選單按鈕。 它提供導覽到 VS Code 內開啟的 Azure 管理頁面。

功能表項目 Description
網路組態 對於 適用於 PostgreSQL 的 Azure 資料庫 靈活伺服器,檢視並修改防火牆規則與公開存取設定。 針對 Azure HorizonDB(預覽版),檢視和修改防火牆規則及 Azure 服務存取權。
伺服器參數 瀏覽並更新 PostgreSQL 參數(靜態與動態皆含)。
Backups 查看備份歷史並設定備份保留政策。
伺服器日誌 存取並下載 PostgreSQL 伺服器日誌以進行故障排除。
克隆伺服器 從備份點複製 Azure 伺服器。

適用於 PostgreSQL 的 Azure 資料庫 flexible server connections 可以顯示完整選單。 當連線擁有完整的 Azure 資源與池識別碼時,Azure HorizonDB(預覽版)連線可顯示網路設定。 參數、備份、伺服器日誌、複製及生命週期操作不適用於 Azure HorizonDB(預覽版)連線。

Note

伺服器設定按鈕只有在擴充功能偵測到伺服器的 Azure 元資料且至少有一個設定頁面可用時才會出現。

Azure metadata prompt

當擴充功能偵測到某部伺服器似乎是受支援的 適用於 PostgreSQL 的 Azure 資料庫 資源,但 Azure 中繼資料尚未可用時,工具列中會出現 Azure Server Detected 提示。 選擇 擷取中繼資料 以取得中繼資料。 擷取元資料可啟用依賴資源身份的 Azure 管理功能,例如 適用於 PostgreSQL 的 Azure 資料庫 靈活伺服器伺服器設定動作、Azure HorizonDB(預覽版)網路配置,以及支援的 Azure 監視器 指標。

若元資料擷取失敗,會出現「 無法取得元資料 」錯誤訊息及詳細資訊。

不完整元資料橫幅

如果取得 Azure 元資料但缺少租戶 ID,儀表板頂端會出現一個標題為「不完整的 Azure 元資料」的警告橫幅。 在橫幅中選取 擷取中繼資料 以重試。 租戶 ID 是伺服器生命週期操作(啟動停止重新啟動)所必需的。

調查分頁

在工具列與細節卡下方,儀表板將監控資料組織成四個調查分頁。 伺服器的功能決定哪些分頁會被看到。

Tab 它顯示的內容
概觀 依類別分組的公制圖表,並配有目錄導覽器,方便快速存取各組別。
查詢 依執行時間、呼叫次數或其他指標排名的頂尖 SQL 語句,並深入分析個別查詢細節。
等待 等待事件分析,包含排名表與時間趨勢圖,顯示伺服器時間花在哪些等待事件上。
研討會 有活動與閒置會話、區塊樹視圖、鎖定活動圖表,以及會話層級的詳細面板。

選擇分頁以切換內容區域。 儀表板會記住你在目前工作階段中使用中的分頁。

概觀

總覽標籤是預設的降落視角。 它以互動式圖表形式,將伺服器指標顯示成可摺疊的群組。

指標群

指標依以下幾組分類。 並非所有群組都會出現在每台伺服器上;儀表板只顯示有資料可用群組。

群組 內容涵蓋
資源 CPU 利用率、記憶體使用率,以及運算層級的指標。
連線 作用中連線、依狀態分類的連線數,以及連線集區指標。
磁碟 I/O 讀寫吞吐量、IOPS 和延遲。
儲存空間 磁碟空間、可用儲存空間,以及儲存百分比。
交易與工作負載 交易速率、提交次數、回滾次數及已處理的列數。
等待事件 主要等待事件類型及其頻率摘要。
維護與自動清理 自動吸塵器活動與死元組計數。
交易識別安全 交易 ID 年齡與環繞式指標。
Replication 複寫延遲與複本狀態(複本設定時)。

使用側邊的目錄導覽器直接跳到特定群組。 選擇群組標題以展開或摺疊圖表。

指標來源

每張指標圖表都會顯示一個來源徽章,標示資料來源:

Badge 來源 可取得性
System 伺服器內建統計收集器 所有 PostgreSQL 伺服器
蔚藍 Azure 監視器 具有 Azure 中繼資料的 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器連線

當兩個來源皆可取得時,總覽會同時顯示兩個來源的指標,並標示每個圖表的來源徽章。

時窗與時區

在時區選擇器中選擇 本地UTC ,以控制圖表軸與提示如何顯示時間戳記。

對於 Azure 監視器 指標,有個時間窗選擇器可以讓你選擇日期範圍:

  • 1 小時
  • 6 小時
  • 12小時
  • 1 天
  • 7 天
  • 30 天

圖表互動

  • 圖例:每張圖都包含一個圖例。 選取一個圖例項目即可隱藏該數列;再次選取即可恢復顯示。
  • 十字準線同步:當你將游標懸停在某個圖表上時,同一分頁中的所有圖表都會將十字準線同步到相同的時間戳記,讓你可以比對不同圖表中的指標。
  • 縮放:使用圖表縮放控制來聚焦於感興趣的時間範圍。

查詢

查詢標籤顯示來自 PostgreSQL 統計收集器的查詢效能資料。 用它來辨識慢速或頻繁呼叫的 SQL 語句。

查詢統計需要在連接的 PostgreSQL 伺服器上啟用擴充 pg_stat_statements 功能。

最佳 SQL 資料表

主要視圖是一個排序的 SQL 陳述式表格。 每列顯示:

Column Description
查詢 標準化的 SQL 文字。 選擇一列來開啟細節面板。
查詢識別碼 PostgreSQL 查詢識別碼。
通話 該語句執行的總次數。
總時間 累積執行時間。
平均時間 平均每次通話執行時間。
Rows 傳回或受影響的資料列總數。
Database 那個陳述所運行的資料庫。
User 執行該語句的 PostgreSQL 角色。

請使用表格上方的 資料庫使用者 篩選下拉選單來縮小結果範圍。

查詢詳細資料面板

在頂端的 SQL 表格中選擇一列,開啟右側的詳細面板。 細節面板顯示:

  • 附有語法醒目提示的完整 SQL 文字
  • 執行統計(呼叫次數、總時間、平均時間、最小/最大時間、標準差)
  • 一個執行圖表,可視覺化語句隨時間的表現

在詳細面板中選擇 詢問 Copilot(或游標中的 Ask AI),即可開啟預先載入查詢上下文的 AI 聊天會話。

等候

等待分頁幫助你了解伺服器在哪裡等待。 它結合了排名表與加時賽表。

  • 排名表:依總等待時間排序等待事件類型。 每一列顯示等待事件名稱、類別及累積時間。
  • 加班圖:可視覺化堆疊的等待事件,讓你能看到監控期間等待模式的變化。

等待標籤中的圖表使用準星同步,因此將滑鼠移到一張圖表上會標示另一張圖表的相同時間點。

選擇 詢問 Copilot(或游標中的 Ask AI)以開啟 AI 聊天會話,並以目前的等待事件資料作為上下文。

會議

Sessions 索引標籤會顯示使用中的資料庫工作階段,並協助你找出封鎖關係。

會議摘要卡

在頂部,摘要卡片會顯示各工作階段類別的數量,例如 使用中閒置已封鎖工作階段。

會議表

工作階段表格會列出各個工作階段,並包含下列欄位:

Column Description
PID 後端的程序識別碼。
User 此工作階段的 PostgreSQL 角色。
Database 已連線的資料庫。
應用程式 用戶端應用程式名稱。
狀態 會話狀態(活躍、閒置、交易閒置等)。
等待類型 目前的等待類型(如果有的話)。
等待事件 特定的等待事件名稱。
查詢 目前或最後執行的查詢文字。
Duration 目前的狀態持續了多久。
後端類型 後端程序類型(客戶端後端、自動清理工作程序等)。

請使用表格上方的篩選控制,依工作負載類型、應用程式或狀態縮小會話範圍。

從 Sessions 表格標頭選擇 詢問 Copilot(或游標中的 Ask AI),以開啟以 session 資料作為上下文的 AI 聊天會話。 當存在阻塞鏈時,分析重點在於阻塞關係與會話健康狀況。

區塊樹

當會話間存在阻塞關係時,儀表板會顯示一個阻擋樹,視覺化哪些會話正在阻擋其他會話。 展開樹節點,追蹤從阻塞會話到其等待者的鏈條。

鎖活動圖表

鎖的活動圖表會顯示鎖的取得與等待模式隨時間變化,讓你能視覺化地總結爭奪情況。

工作階段詳細資料面板

選擇會話列以開啟詳細面板,顯示完整會話資訊,包括完整的查詢文字與會話屬性。

複本拓撲

對於使用讀取複本的 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器連線,儀表板中會顯示 複本拓撲面板。 它會顯示主要伺服器及其副本,並顯示狀態指示、切換準備度及任何拓撲警告。

從儀表板問 AI

詢問 Copilot 按鈕(游標中的 Ask AI)會出現在多個儀表板情境中:查詢標籤的標頭、等待標籤、會話標籤,以及各個指標圖表。 當你選擇它時,擴充功能會以代理模式開啟一個 AI 聊天會話,並預先載入相關的儀表板資料(指標、查詢細節、等待事件或會話資訊)作為上下文。

Note

詢問 Copilot / Ask AI 按鈕需要有已啟用的 AI 助理:在 Visual Studio Code 中安裝並登入 GitHub Copilot,或在 Cursor 中使用 Cursor 內建的 AI。 當資料還在載入或沒有資料可用時,按鈕會被停用。

斷開狀態

當伺服器斷線時,儀表板會顯示一個提示,說明需要資料庫連線。 選擇 連接 以重新建立連線並載入儀表板資料。

Azure 計量狀態訊息

在查看 Azure 監視器 指標時,如果指標無法取得,儀表板可能會顯示狀態訊息:

  • 缺少 Azure 元資料:歷史指標需要 Azure 元資料。 選擇 取取元資料 以取得它。
  • 權限不足:你沒有從 Azure 監視器 查詢指標所需的 Azure 權限。 選擇 查看必要權限 以查看詳細資訊。