[pgcluster: 140] リモートからの状態の監視
   
    Jun Kuriyama
     
    pgcluster@ml.postgresql.jp
       
    Mon, 23 Feb 2004 15:23:20 +0900
    
    
  
 今、手元の 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