Last updated: 12/22/2002 Top ドキュメントTop

データベース管理システム 管理者用ガイド
不具合の処理・ロギング

不具合について

システム内部では、考えられるさまざまな不具合に対し、 やや厳格な処理を行っています。

このシステムでは、不具合を次の 4種類に分けて扱います。

警告
一般に入力されたデータなどに対する度合いの軽い不具合です。 この不具合が起こると、システムは警告のメッセージを出します。 通常ユーザは、処理を継続させることもできます。
一般のエラー
エラーの原因がユーザ側にあり、処理を継続できない不具合です。 この不具合が起こると、システムは情報をログに書き出した後、 ブラウザにメッセージを表示します。
致命的なエラー (Fatal error)
システムに異常があると思われる不具合です。 ユーザが通常行わないような処理を行った場合にも、このエラーが起こります。 この不具合が起こると、システムは管理者にメールを送り、 情報をログに書き出した後、 致命的なエラーが起こった旨をブラウザに表示します。
Internal Server Error など
システムが全く予期しない不具合です。 滅多なことでは発生しないはずです。

エラーコード

各種定義ファイルの中でエラーや警告を表す場合、 通常はエラーコードとして扱います。 エラーコードは文字列でなければいけません。

エラーコードが ':' で始まる場合は、先頭の ':' を除いた文字列が、 エラーや警告の内容を表します。 (例えば、':1〜9 の整数を指定してください。' のように記述されます。)

エラーコードが ':' 以外の文字で始まる場合は、 エラーメッセージ定義ファイル の対応する文字列が、エラーや警告の内容を表します。 対応するエラーメッセージがエラーメッセージ定義ファイルに書かれていない 場合は、致命的なエラーになります。

複数言語のインターフェイスをもつアプリケーションなどの、 インターフェイスに応じて頻繁にメッセージを変える必要があるような 特別な場合でなければ、 ':' で始まる文字列を利用したほうがよいでしょう。 さもなければ、記述漏れによる致命的なエラーのことを 考えなければいけなくなります。

ロギング

システムは、致命的なエラーが発生したときや、 正しくデータが挿入されたときなど、要所でログを残します。

1件分のログの情報は1行にまとめられ、 ログファイルに追加されます。ロギングの処理は全て DBIPgSystem::DB::add_log メソッド を呼び出すことで行われます。 詳細はモジュールのドキュメントやソースを参照してください。