PostgreSQL 系統(tǒng)監(jiān)控大全
作者: 不剪發(fā)的Tony老師
畢業(yè)于北京航空航天大學(xué),十多年數(shù)據(jù)庫(kù)管理與開(kāi)發(fā)經(jīng)驗(yàn),目前在一家全球性的金融公司從事數(shù)據(jù)庫(kù)架構(gòu)設(shè)計(jì)。CSDN學(xué)院簽約講師以及GitChat專欄作者。csdn上的博客收藏于以下地址:https://tonydong.blog.csdn.net
大家好,我是只談技術(shù)不剪發(fā)的 Tony 老師。
數(shù)據(jù)庫(kù)系統(tǒng)的信息統(tǒng)計(jì)、狀態(tài)監(jiān)控以及性能優(yōu)化是 DBA 日常工作中必不可少但復(fù)雜而繁瑣的一部分,今天給大家介紹一個(gè)提供 PostgreSQL 系統(tǒng)可觀測(cè)性(Observability)的網(wǎng)站:pgstats.dev。
該網(wǎng)站通過(guò)一個(gè)交互式的圖形界面提供了 PostgreSQL 數(shù)據(jù)庫(kù)系統(tǒng)的內(nèi)部組件和功能模塊介紹,以及相關(guān)的字典視圖、系統(tǒng)函數(shù)、擴(kuò)展插件等。該網(wǎng)站支持 PostgreSQL 9.5 到最新版本。
可觀測(cè)性
該網(wǎng)站提供了以下系統(tǒng)組件和模塊的統(tǒng)計(jì)和監(jiān)控信息:
客戶端后臺(tái)進(jìn)程(Client Backends);
查詢計(jì)劃器(Query Planning);
查詢執(zhí)執(zhí)行器(Query Execution);
索引使用統(tǒng)計(jì)(Indexes Usage);
表使用統(tǒng)計(jì)(Tables Usage);
共享緩沖區(qū)(Shared Buffers);
緩沖區(qū) IO 統(tǒng)計(jì)(Buffers IO);
SLRU 緩存統(tǒng)計(jì)(SLRU Caches);
Postmaster 進(jìn)程(Postmaster);
后臺(tái)工作進(jìn)程(Background Workers);
Autovacuum 管理進(jìn)程(Autovacuum Launcher);
Autovacuum 工作進(jìn)程(Autovacuum Workers);
預(yù)寫式日志(Write-Ahead Log);
系統(tǒng)日志進(jìn)程(Logger Process);
統(tǒng)計(jì)信息收集進(jìn)程(Stats Collector);
邏輯復(fù)制(Logical Replication);
WAL 發(fā)送進(jìn)程(WAL Sender Process);
WAL 歸檔進(jìn)程(WAL Archiver Process);
后臺(tái)寫入器進(jìn)程(Background Writer);
檢查點(diǎn)進(jìn)程(Checkpointer Process);
網(wǎng)絡(luò)監(jiān)控(Network);
存儲(chǔ)監(jiān)控(Storage);
WAL 接收進(jìn)程(WAL Receiver Process);
恢復(fù)進(jìn)程(Recovery Process);
數(shù)據(jù)和索引文件(Tables/Indexes Data Files)。
我們既可以將鼠標(biāo)移動(dòng)到中間的組件和模塊,查詢與此相關(guān)的視圖、函數(shù)或者插件;也可以將鼠標(biāo)移動(dòng)到兩側(cè)的視圖、函數(shù)或者插件,了解與其相關(guān)的功能。例如,與查詢計(jì)劃“Query Planning”相關(guān)的視圖和工具包括 EXPLAIN 和 pg_stat_statements 模塊。
查詢計(jì)劃
點(diǎn)擊“Query Planning”可以查看關(guān)于查詢計(jì)劃器的介紹,點(diǎn)擊“pg_stat_statements”可以查看關(guān)于該模塊的詳細(xì)介紹。
pg_stat_statements
最后,給大家推薦一個(gè)配套的命令行管理工具:pgCenter。