実行時環境は開発・テスト・運用の3つが用意されていて、そのうちの1つが ENVIRONMENT定数 の値となります。この ENVIRONMENT定数 は環境によって動作を変えたいとき、例えば、運用環境の時だけキャッシュしたり、接続するデータベースを切り替える、などに使用されます。
実行時環境は config/environment.php で設定します。初期状態は DEVELOPMENT(開発環境)となっています。運用環境の場合は下記のように、PRODUCTION にすることを推奨しています。
if (!defined("ENVIRONMENT")) define("ENVIRONMENT", PRODUCTION);
// if (!defined("ENVIRONMENT")) define("ENVIRONMENT", TEST);
// if (!defined("ENVIRONMENT")) define("ENVIRONMENT", DEVELOPMENT);
config/environment.php では、上記の実行時環境をもとに、error_reportingレベルとSabelログレベルが設定されます。ログレベルは、どのレベルのログ(メッセージ)を出力するかを決定します。
サービスを開始したら、実行時環境を PRODUCTION に設定してください。PRODUCTION ではPHPのエラーメッセージがクライアントに出力されないようになっています。また、Sabelログレベルは SBL_LOG_ERR になっていて、SBL_LOG_ERR で送信されたログしかファイルに出力されません。開発・テスト環境では全てのレベル(SBL_LOG_ALL)のログが出力されます。
ある特定のレベルのメッセージだけを出力したい場合は、その値を SBL_LOG_LEVEL に設定してください。複数のログレベルを指定するために | を使用することができます。
// SBL_LOG_INFOとSBL_LOG_DEBUGだけ出力する
define("SBL_LOG_LEVEL", SBL_LOG_INFO | SBL_LOG_DEBUG);
ログは
logs/{環境}.sabel.log に出力されます。例えば開発環境であれば、
logs/development.sabel.log となります。
関連項目