PHP アプリケーションからのいくつかのメッセージを Apache エラー ログに記録したいと考えています。しかし、これは非本番環境でのみ発生することを望みます。
PHP はerror_log
メッセージをエラー ログ ファイルに記録する必要があることがわかりましたが、アプリケーションが非運用環境で実行されている場合にのみログに記録するように制御するにはどうすればよいでしょうか。
また、パラメータtrigger_error
を取るものがあることもわかりました。error type
そして、error_reporting
php.ini の設定によって、実際にログに記録されるエラーの種類を決定できます。そのため、開発中は error_reporting を に設定していますがE_ALL
、本番環境ではより制限されています。これで、trigger_log を使用して常にログに記録できるようになりましたE_USER_NOTICE
。これは、メッセージが開発ログ ファイルにのみ表示され、運用ログ ファイルには表示されないことを意味します。
ただし、trigger_error はすべてのログでスタック トレースも生成しますが、これは私には少し不要です。このスタック トレースを無効にするにはどうすればよいですか。
また、私は物事を正しい方法で行っていますか。人々は一般的にこの問題をどのように処理しますか。
編集: エラーメッセージを抑制しようとしていません。dev でより多くのデバッグメッセージを提供しようとしています。「リクエストには次のパラメーターが含まれています」、「ステップ 1 完了」など。これは実際には本番環境では必要ありません。