[pgsql-jp: 26522] Re: ログ収集にかんして

岩田大樹 daiki @ aquaring.co.jp
2002年 6月 28日 (金) 11:41:38 JST


岩田です。
お返事ありがとうございます。

> ;;; そこで,ログを一つのDB 内の一テーブルに貯めつづけるのは普通でしょうか?
> ;;; もちろん数日でテーブル内のレコードはすごく肥大化するはずなのでログを
> ;;; 切り分ける方法なども検討知るべきだと思っています。
> ;;; 例えば,一週間ごとにPHP の方でログテーブルを切り分けて保存するとか・・
> ;;; tbl_week1 ・・・ 第一週分のログ
> ;;; tbl_week2  ・・・ 第二週分のログ みたいな。
> ;;; 
> ;;; Linux であればログロテートするプログラムがすでに用意されていますが,
> ;;; Postgres で切り分けるツールを聞いた事がありません。
> 
>   PostgreSQL ならば、継承を用いれば、ログノローテートは DROP で済みます。

継承は使った事があります。
よくやるのは,トリガにて「レコードが削除されたら別の継承させた同カラムテーブル
にログを残す」との方法。

杉田さんが言うようなDrop された場合にDrop されたテーブル内レコード全てを
継承させた別テーブルに以降するということはやった事がありません。

ログのロテート方法は杉田さんが言うような方法でよいと思います。
ただ,ログレコードの持ち方によっては集計する際の効率に関わってくるので
ログを管理するテーブル構造にはシビアになりたいものです。
例えば一日毎にログを格納するテーブルを切り分け,最低でも一日分だけログ
レコードを持っておくみたいな方法は一般的でしょうか?
恐らく一テーブルに一週間分ものレコードをもってもよいのですが,きっと
検索に時間がかかるし・・そもそも一般的でないような気もします。

> 
> 
> Kenji Sugita
> sugita @ sra.co.jp




pgsql-jp メーリングリストの案内