自Hologres V2.0版本開始,PG_STAT_ACTIVITY升級為HG_STAT_ACTIVITY視圖。HG_STAT_ACTIVITY是PG_STAT_ACTIVITY視圖的擴充,您可以通過HG_STAT_ACTIVITY視圖查詢到活躍SQL更詳細的運行資訊,包括query id、query engine以及資源消耗等資訊,從而協助您更進一步診斷活躍Query。
查詢HG_STAT_ACTIVITY(PG_STAT_ACTIVITY)視圖資訊
您可以執行如下命令查看Query的運行資訊。其他Postgres相容管理工具,依舊可以查詢pg_stat_activity擷取SQL運行態資訊。
--2.0及以上推薦文法
SELECT * FROM HG_STAT_ACTIVITY;
--1.3及以下版本文法
SELECT * FROM PG_STAT_ACTIVITY;HG_STAT_ACTIVITY視圖的欄位說明如下所示:
欄位 | 描述 | HG_STAT_ACTIVITY視圖支援情況 | PG_STAT_ACTIVITY視圖支援情況 |
datid | Hologres後端串連到的資料庫的OID。 | 支援 | 支援 |
datname | Hologres後端串連到的資料庫的名稱。 | 支援 | 支援 |
pid | Hologres後端的進程ID。 | 支援 | 支援 |
query_id | 當前執行SQL的ID,一個SQL對應一個query_id。 | 支援 | 不支援 |
transaction_id | 當前SQL所屬的事務ID,一個事務中可能有多個SQL。 | 支援 | 不支援 |
usesysid | 當前活躍會話使用者的系統標識符。 | 支援 | 支援 |
usename | 當前串連的使用者名稱。 | 支援 | 支援 |
application_name | 用戶端的應用類型。 其中常見的應用類型如下:
其餘應用建議業務上在串連Hologres時串連串上顯式指定 | 支援 | 支援 |
running_info | 包含SQL執行過程各種狀態資訊,格式為JSON格式。其子欄位包括:
| 支援 | 不支援 |
extend_info | 包含SQL執行過程資源消耗等的擴充資訊,為JSON格式。其子欄位包括:
說明 be_lock_waiters採集的都是backend的鎖,而不是frontend的鎖,排查鎖請參見鎖以及排查鎖。 | 支援 | 不支援 |
state | 表示串連的狀態。常見的狀態如下:
| 支援 | 支援 |
query_start | Query開始執行的時間,如果active不是active,取值為上一個查詢開始的時間。 | 支援 | 支援 |
client_addr | 用戶端的IP地址。 顯示的IP地址可能是被解析過的,不保證一定是源端IP。 | 支援 | 支援 |
client_hostname | 用戶端的主機名稱。 | 支援 | 支援 |
client_port | 用戶端的連接埠。 | 支援 | 支援 |
backend_start | 後台進程開始的時間。 在Hologres中無需過多關注。 | 支援 | 支援 |
xact_start | 該進程的當前事務被啟動的時間。
在Hologres中無需過多關注。 | 支援 | 支援 |
state_change | 串連的狀態(state)上一次被改變的時間。 在Hologres中無需過多關注。 | 支援 | 支援 |
wait_event_type | 後端正在等待的事件類型,如果不存在則為NULL。可能的取值有:
| 支援 | 支援 |
wait_event | 如果後端當前正在等待,則是等待事件的名稱,否則為 NULL。 | 支援 | 支援 |
backend_xid | Hologres後端的頂層事務標識符。 | 支援 | 支援 |
backend_xmin | 當前後端的xmin範圍。 | 支援 | 支援 |
query | 後端最近執行的查詢。如果state為 | 支援 | 支援 |
backend_type | 當前後端的類型。可能的類型為autovacuum launcher、autovacuum worker、logical replication launcher、logical replication worker、parallel worker、background writer、client backend、checkpointer、startup、walreceiver、walsender以及 walwriter。除此之外還包括後端的動作項目,例如PQE等。 說明 需要關注 | 支援 | 支援 |