2016-11-15 77 views
1

由于某些原因,laravel在我的.env文件中设置了APP_DEBUG = false后不断将日志语句写入laravel日志。即使APP_DEBUG = false,Laravel也会继续记录

我有以下日志声明:

Log::debug("testmessage : BEGIN"); 

我已经证实,环境变量是由Laravel阅读。我这样做是使用这个命令写入错误日志:

error_log("APP_DEBUG : " . env('APP_DEBUG', false)); 

它显示什么,如果APP_DEBUG是假的,“1”

我已清除缓存,如果这是真的:

[email protected]:/var/www/hipengage$ **php artisan config:cache** 
Configuration cache cleared! 
Configuration cached successfully! 
[email protected]:/var/www/hipengage$ **php artisan cache:clear** 
Application cache cleared! 

我已经重新启动Apache的

我.ENV文件看起来像这样:

APP_ENV=local 
APP_DEBUG=false 
APP_KEY=********************************* 

DB_HOST=localhost 
DB_DATABASE=homestead 
DB_USERNAME=homestead 
DB_PASSWORD=secret 

CACHE_DRIVER=file 
SESSION_DRIVER=file 
QUEUE_DRIVER=sync 

MAIL_DRIVER=smtp 
MAIL_HOST=mailtrap.io 
MAIL_PORT=2525 
MAIL_USERNAME=null 
MAIL_PASSWORD=null 
MAIL_ENCRYPTION=null 

我在这里失踪的任何东西?任何帮助非常感谢。

+0

'if(APP_DEBUG == true){Log :: debug(“testmessage:BEGIN”) ; ''? – Peon

回答

0

APP_DEBUG用于限制应用程序通过浏览器显示的错误详细信息的数量。

不应该混淆它控制日志文件中的日志记录。

要登录只有当APP_DEBUGtrue那么你可以检查它的价值,做到这一点是:

if (config('app.debug')) 
{ 
    Log::debug("some debug text"); 
} 

或者你可以创建这样一个辅助函数:

function some_cool_name($log) 
{ 
    if (config('app.debug')) { 
     Log::debug($log); 
    } 
} 

然后你就可以使用它在任何地方:

some_cool_name('some debug text'); 
相关问题