2013-02-15 1 views
0

케이크 설정에 디버그가 0으로 설정되어 있지만 app/tmp/logs/debug.log로 계속 디버깅됩니다. 아무런 부두가 일어나지 않았는지 확인하기 위해서 Configure :: read ('debug')를 출력하기도하고 0을 내뱉습니다. 왜 이런 일이 일어날 지 아무 생각이 없나요? 다음은이 디버그 로그의 반복 로그 결과입니다.CakePHP 디버그가 0으로 설정되었지만 아직 디버깅 중입니다

2013-02-15 01:25:41 Notice: Strict (2048): Non-static method App::_loadVendor() should not be called statically in [/var/www/website/htdocs/lib/Cake/Core/App.php, line 614] 
Trace: 
App::_loadVendor() - CORE/Cake/Core/App.php, line 614 
App::import() - CORE/Cake/Core/App.php, line 614 
include - APP/View/Helper/AdHelper.php, line 3 
App::load() - CORE/Cake/Core/App.php, line 497 
spl_autoload_call - [internal], line ?? 
class_exists - [internal], line ?? 
HelperCollection::load() - CORE/Cake/View/HelperCollection.php, line 75 
View::loadHelpers() - CORE/Cake/View/View.php, line 577 
View::render() - CORE/Cake/View/View.php, line 359 
Controller::render() - CORE/Cake/Controller/Controller.php, line 898 
Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 114 
Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 89 
[main] - APP/webroot/index.php, line 96 

또한 저는 PHP 5.4를 사용하고 있으며 CakePHP 2.3을 실행 중입니다.

감사합니다.

+0

은 디버그 로그의 유일한 줄입니까? – djjjuk

+0

이것은 디버그 로그의 유일한 줄이 아니며 약 1GB 크기이며 1 주일 전에 정리했습니다. 모든 항목은이 형식과 유사하지만 동일하지 않습니다. – cyphun

+0

모두 '엄격한'오류입니까? Strict (2048) : – djjjuk

답변

1

모든 컨트롤러에 대해 (& 모든 컨트롤러에 대해) 디버깅 모드를 해제했는지 확인하십시오. 케이크 core.php에이 코드를 입력하십시오.

Configure::write('Error', array(
    'handler' => 'ErrorHandler::handleError', 
    'level' => 0, 
    'trace' => false 
)); 

자세한 내용은 here을 확인하십시오.

+0

여기에 게시 한 오류 구성을 바꾸었지만 디버그 로그가 채워지지 않았습니다. 또한 오류가 오류 로그로 전달되면 안됩니까? – cyphun

+0

아래의 답변보기 -주의 사항 기본적으로 오류 로그보다는 디버그로갑니다. – gazareth

0

debug를 0으로 설정하면 debug() 또는 Debugger :: log를 호출하면 기본값을 덮어 쓰지 않는 한 debug.log에 기록됩니다. 반면 0보다 큰 디버그를 사용하면 debug()에 대한 호출이 브라우저 (모델 또는 컨트롤러에서 호출 된 경우 뷰의 맨 위에 있고 뷰에서 호출 된 경우에는 인라인)에 플래시 메시지로 표시됩니다.

당신은 어떤 bootstrap.php 로그인으로 이동 오류의 유형을 정의 할 수 있습니다 :

App::uses('CakeLog', 'Log'); 
CakeLog::config('debug', array(
    'engine' => 'FileLog', 
    'types' => array('info', 'debug', 'notice'), 
    'file' => 'debug', 
)); 
CakeLog::config('error', array(
    'engine' => 'FileLog', 
    'types' => array('warning', 'error', 'critical', 'alert', 'emergency'), 
    'file' => 'error', 
)); 

것을 의미하는 '디버그'CakeLog :: 설정에 대한 유형의 배열의 기본 케이크 장소 '통지'에 의해 공지 사항은 debug.log에 들어갑니다. 'notice'를 'error'설정의 types 배열에 복사하면 대신 error.log에 알림이 표시됩니다.

관련 문제