[pgcluster: 140] リモートからの状態の監視
Jun Kuriyama
kuriyama @ imgsrc.co.jp
2004年 2月 23日 (月) 15:23:20 JST
今、手元の pgcluster に手を入れて、
(1) pgreplicate が今何台の DB_TBL_USE なホストを抱えているか
(2) pgcluster が今どのサーバを current replicate server として持ってい
るか
というのをリモートから調べられるようにしようと考えています。
(1) に関しては、勝手に header.cmdType == 'o' なパケットが来たらずら
ずらっと Host_Tbl_Begin から値を羅列して返すことで、外部の perl script
で状態を取得できるようにはなりました。
で、(2) の方なんですが、同様に pgcluster の 5432/tcp か、
recoveryPort に独自パケットを投げる、でもいいかなあ、と思いつつ、
pg_catalog.pg_cluster などというテーブルがあってそこに今の状態が入って
いる、という形だと psql や DBD::Pg などを使って簡単に監視スクリプトが
書けて嬉しいなあ、とも思ってしまいました。
システムテーブルを用意して、backend/libpq/replicate.c あたりでそこを
更新する、というのは簡単にできるものなのでしょうか?
--
Jun Kuriyama <kuriyama @ imgsrc.co.jp> // IMG SRC, Inc.
<kuriyama @ FreeBSD.org> // FreeBSD Project
pgcluster メーリングリストの案内