2012-01-06 8 views
3

エラーログを出力するのではなく、MySQLデータベースにエラーを保存するようにphp.iniを設定することはできますか?データベースにエラーを保存するようにPHPを設定する

私が見る唯一の選択肢は、php.iniを使用して、カスタムエラー処理関数を含むファイルをすべてのPHPスクリプトに追加することです。しかし、これは効率的に聞こえません。

+3

[すべてのPHPエラーをerror_logではなくデータベースに出力する](http://stackoverflow.com/questions/2911094/outputting-all-php-errors-to-database-not-error-log) – Frankie

+0

警告するmysqlデータベースにエラーを出力し、ユーザが誤ったページに出会うと、彼らは好きなだけ多くのデータでデータベースを溢れさせる可能性があります。 –

+0

@フランキー私の質問はスクリプト内でカスタムエラーハンドラを使用するのではなく、エラーログをデータベースに出力する効率的な方法(スクリプトごとではないシステム)を求めているので、重複していません。 – Gajus

答えて

-1

PHPスクリプトを実行するようにcronジョブを設定すると、新しいエラーのエラーログファイルを読み込んでデータベースに保存できます。エラーログテーブルはリアルタイムではありませんが、あまりにも大きな問題ではないはずです。

+0

これは私が今やっているのと似ています。しかし、エラーログファイルを完全に冗長化する方法を探しています。私はそこにPHPの拡張子や何かがあるはずですが、私は何も見つけていません。 – Gajus

1

フランキーのコメントで答えが気に入らなかった場合、これはサーバーレベルの質問の多くです。 set_error_handlerを使用しないと、すべてのエラーをログではなくログファイルに出力する方法はありません(PHPで)。あなたが何をするかを制御し、doesnのためにカスタムエラーログハンドラを使用できるようになります

CustomLog "|/path/to/custom_log_script.php [OPTIONS]" 

(パイプに注意してください)

」:

Apacheを使用している場合は、次の操作を行うことができますログファイルには書き込まれません。

関連する問題