내 오류 로그를 읽을 때 예외 문자열에서 긴 문자열 (예 : SQL 문자열)이 잘린 것을 알 수 있습니다.예외 추적에서 매개 변수의 전체 값을 기록 할 수 있습니까?
FR_Model
.PHP (204) : 예를 들면 다음과 같습니다이다 FR_Base-> 쿼리 ('POS INTO INSERT ...', 배열)
내가없이 전체 매개 변수를 반향하는 쉬운 방법을 싶습니다 내 자신의 Exception 하위 클래스를 롤백해야합니다. TIA.
내 오류 로그를 읽을 때 예외 문자열에서 긴 문자열 (예 : SQL 문자열)이 잘린 것을 알 수 있습니다.예외 추적에서 매개 변수의 전체 값을 기록 할 수 있습니까?
FR_Model
.PHP (204) : 예를 들면 다음과 같습니다이다 FR_Base-> 쿼리 ('POS INTO INSERT ...', 배열)
내가없이 전체 매개 변수를 반향하는 쉬운 방법을 싶습니다 내 자신의 Exception 하위 클래스를 롤백해야합니다. TIA.
log_errors_max_len
PHP 설정을 확인하십시오. php.net에서 :
log_errors_max_len
integer
- 변경 : 바이트log_errors
의 최대 길이를 설정PHP_INI_ALL
.
error_log
소스에 대한 정보가 추가되었습니다. 기본값은 1024 이며 0은 최대 길이 인 을 전혀 적용하지 못하게합니다. 이 길이는 에 기록되어 오류가 표시되고 오류는$php_errormsg
에도 적용됩니다. 테스트하려면
:(via this Bogus bug) 작동하지 않습니다 0이 샘플 코드에 log_errors_max_len
을 변경하지만 1024보다 큰 숫자로 변경하면 어떤 효과가있는 경우
<?php
error_reporting(E_ALL|E_STRICT);
ini_set('display_errors',0);
ini_set('log_errors',1);
ini_set('log_errors_max_len','0'); //change this value
ini_set('html_errors',0);
function deepTrace($a, $b, $c) {
if ($c < 50) {deepTrace($a, $b, $c+1);} else {throw new Exception('Example exception that together with the trace is over 1024 bytes.');}
}
deepTrace('example','function',0);
?>
, Zend Optimizer, Zend Debugger, Xdebug 등과 같은 PHP의 표준 동작을 무시하는 어딘가에 zend_extension
을로드하는 것이 거의 확실합니다.
사용중인 확장을 찾으려면 grep -r zend_extension /etc/php.*
을 시도하십시오. 주석 처리되지 않은 일치하는 줄을 발견하면 범인이 있습니다.
0으로 설정하면 작동하지 않습니다. 아마도 이것은 오류가 아닌 예외와 관련이 있을까요? –
더 좋은 예를 보시려면 위의 설정을 참조하십시오. 0으로 설정해도 작동하지 않는다면 문제가되는 zend_extension이 거의 확실하게 사용됩니다. – rymo
CodeIgniter MVC 또는 다른 프레임 워크로 프로그래밍 했습니까? –
아니요, 내 자신의 MVC 프레임 워크를 사용하고 있습니다. –