• ベストアンサー

自作アプリが何をしているか知りたい。

毎度お世話になります。 この度大変困窮しており お力を拝借したい考えです。 現状ODBCで接続している Win上の自作アプリから RedHatLinux9上のpostgreSQL7.1.2のDBで 一部のデータを管理しています。 思うに該当のアプリは 単にSQL文を発行しているだけだと 推測しております。 そこでアプリがDBに どんなSQL文を発行しているか 知りたいと考えております。 何らかの方法で発行されているSQL文を記録するか 垣間見る方法はありませんでしょうか。 もしくはデータが 変更されたり追加されたテーブルを 知る方法でもかまいません。 よろしくお願いいたします。 追記:自作アプリの製作者はもうおらず、 ソースやドキュメントもありません。

質問者が選んだベストアンサー

  • ベストアンサー
noname#86752
noname#86752
回答No.1

ドキュメントはまだしもソースがないのは難儀ですね。 とりあえず参考URLにログの取り方が書いてあります。 最初の前提条件を無視してやってみて、だめだったらソースからビルドしなおしになりそうです。 (そうなったらテスト用の環境を用意しないと怖いですね)

参考URL:
http://ml.postgresql.jp/pipermail/pgsql-jp/2003-November/015217.html
nono_taro
質問者

お礼

アドバイスありがとうございます。 ログの例を見ていると 望んでいるものが記録できそうです。 前提条件を無視してやってみましたが どうやらSYSLOGのオプションは付加されていないようで ログが取得できませんでした。 一度テスト環境を作って ビルドしなおしてみたいと思います。

nono_taro
質問者

補足

7.1.2をコンパイルしようと思ったのですが RedHat9上ではコンパイルできませんでした。 ※現行はrpmパッケージで インストールがなされているようです。 しかたなく7.4.6を拾ってきたところ コンパイルできたので ひとまずはこちらで検証を取ってみております。 早速syslogを有効にしたところ ログの蓄積を確認できました。 アプリも特に問題なく動作しているようですし ログもよさそうな内容です。 これなら調査が出来そうです。 本サーバでログを取ると 過激にログが溜まり調査どころではないので このまま試験環境で進めたいと思います。 この度はまことにありがとうございました。

その他の回答 (1)

回答No.2

下の参考URLのlog_statementをtrueにするではだめですか?

参考URL:
http://www.postgresql.jp/document/pg746doc/html/runtime-config.html#RUNTIME-CONFIG-LOGGING
nono_taro
質問者

お礼

「log_statement」の件ありがとうございました。 今7.1.2と7.4.6を比較して検証を取っております。 現状の7.1.2には「log_statement」の項は無いようで 代わりに「syslog」の項のみが数行ありました。 # Syslog # #ifdef ENABLE_SYSLOG #syslog = 0 # range 0-2 #syslog_facility = 'LOCAL0' #syslog_ident = 'postgres' #endif 動作などは同じ物が期待できそうですが 「--enable-syslog」が効いてないようなので 動作しませんでした。

関連するQ&A