반응형
모든 개발자는 디버깅이 필수고, 어떻게 디버깅하냐에 따라 디버그 실력을 알 수 있다.
개인적으로는 디버깅실력도 개발이라고 생각한다 ㅎ.ㅎ
하지만! php는 디버깅이 너~~~~~~~~무 불편하다.
오류 날 때 마다 php_error.log였나.... 그파일을 항상 확인해야 했다.
하지만! 라라벨에서는 debug bar를 지원하고 있다.
이번 포스팅에서는 라라벨의 debug에 대해 알아보자😁
1. 디버깅 설정
- .env파일 수정
~~~ APP_DEBUG=true ~~~ |
이 설정을 하면 디버그바도 보이고, 오류가 났을 시 페이지에 아래 사진처럼 렌더링되어 오류를 확인하고 바로바로 수정할 수 있다!
2. 디버깅 페이지 설명
- 에러가 일어난 파일위치 및 에러 정보를 알 수 있다. 위의 화면에서는 구문오류가 나왔다고 친절하게 설명을 해준다.
- 에러위치를 알려준다. 이부분에서 에러가 났어! 라는 느낌으로 불투명한 빨간색 백그라운드로 위치를 알려준다.
- 파일이 타고 들어온 루트를 알려준다. 예를들면 라우팅을통해 이 파일로 왔다~~라는 일련의 루트들을 알려준다.
- 환경이나 세부 정보들을 보여준다. 세션, 호스트값, 루트디렉토리, DB설정 등등을 볼 수 있다.
3. 디버깅 바 설명
- 디버그바의 ∨,∧를 클릭하면 펼쳐보기, 숨기기를 설정 할 수 있다.
Messeges
- 로그의 출력을 확인할 수 있다.
- 로그 사용 방법은 아래를 참고
- 더 알고 싶다면 라라벨의 logging부분을 참고하면 된다.
Log::info('로그내용');
Debugbar::info('로그내용');
logger()->info('로그내용');
Log::error('로그내용');
Log::warning('로그내용');
Timeline
- 페이지가 렌더링 되는 시간을 계산할 수 있다.
- booting : laravel 시작 시간
- Applicaion : 실제 처리 시간
- 처리가 무거울때 원인을 구분할 수 있다.
- 사용방법은 아래를 참고
start_measure('key', 'key처리');
sleep(2);
stop_measure('key');
add_measure('경과시간', LARAVEL_START, microtime(true));
debug바에서는 아래와 같이 보인다.
Exceptions
- 오류에 대한 세부 정보를 보여준다.
- 위의 디버깅 페이지의 간소화된 오류메세지를 보여준다.
Views
- 화면에 렌더링되는 php파일들을 확인할 수 있다.
Route
- 라우트의 자세한 내용을 볼 수 있다.
Queries
- 페이지 처리중에 사용한 sql을 확인할 수 있다.
- 실행시간이 기록되어 있기 때문에 무거운 쿼리와 N+1을 발견할 수 있다.
- 아래 사진의 빨간 부분이 쿼리 실행시간이다.
Models
- 페이지에 이용하고 있는 모델과 그 개수가 출력이 된다.
Mails
- 😥모르겠다...아시는분 있으시면 댓글로 적어주세요
Gate
- 게이트를 확인하는거 같은데..😥잘 모르겠다...아시는분 있으시면 댓글로 적어주세요
Session
- 세션 정보를 확인할 수 있다.
- flash나 old의 값을 확인할 수 있다.
Request
- 요청 내용을 확인할 수 있다.
- 현재 path에 대한 정보를 확인할 수 있다.
- request header와 server, 세션값등을 확인할 수 있다.
도움이 되었다면 공감 부탁드립니다😁
반응형
'개발일지 > 기타' 카테고리의 다른 글
[JAVA/JQuery/JS] 중요 정보 암호화 하여 전송하기/복호화하여 저장하기 (0) | 2022.04.28 |
---|---|
[web hacking] 프록시 도구(Burp Suite)를 이용한 웹 해킹 및 대응 (0) | 2022.04.28 |
[Laravel] 라라벨 설치 방법(원하는 버전으로 설치하기) (0) | 2022.04.18 |
[Linux] JAVA 환경변수 설정(Web Applicaion) (0) | 2022.04.15 |
[Linux] 방화벽 설정 (0) | 2022.04.15 |
댓글