log찍히지않을때..
갑자기 안찍힌건지.. 하루지나고 log보는데 콘솔창에 log가 안찍힌다...
log4j.xml의 파일이 있는 src/main/resources 로 이동하여 확인을 하며 구글링을 하며 보았다...
<!DOCTYPE log4j:configuration PUBLIC "-//APACHE//DTD LOG4J 1.2//EN" "log4j.dtd">
맨윗줄에 이렇게 써있을텐데, 노랑색으로 된 부분을
"http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/xml/doc-files/log4j.dtd"
이걸로 바꿔준다!! 해당 로컬로 말고 그냥 웹주소를 걸어놓고 해결 하면된다!
그리고 log4j.xml파일에 들어가면 내가 logger를 사용해야할 패키지도 추가하면서 해야 로거가 작동이 잘 되는거 같다.
아주 잘 된다 ㅎㅎ
근대 왜 logger를 쓸까..?
콘솔창에 값을 띄우는 것은 분명히 개발시에 무조건적으로 잘 되나 값은 잘 들어갔나 확인용으로 오류파악용으로 사용을 한다.
근대 왜 logger를 쓸까 의문점이 들었다..
이클립스로 코딩공부할때는 System.out.print()를 썼는데 ..왜지?
여러 구글링을 하면서 보았을때
최종적으로 정리를 하자면 성능면(?)에서 logger가 우수하기 때문이다. (적절한 곳에 적절히 사용을 하면 될 듯.)
지금 내가 하고있는 프로젝트에서는 그냥 잘 되었나 로그를 콘솔만 찍어보지만,
System.out.print() api사용시에는 최소한의 정보가 없다. 왜냐 그냥 값만 찍히니까... 그리고 IO리소스를 많이 사용하기때문에 시스템이 느려지기 때문이라고들 한다.
만약에 에러가 발생할 경우 몇분 몇초 어디에서 라는 최소한의 정보가 있어야 개발자 입장에서 찾기 편하고 알기 쉽다.
그리고 로그들을 저장하여서 분석 및 확인 등을 하는데 그것들을 파일로 관리하기 위함이라고들 합니다.
logger는 그런역할들을 해주니까 개발자입장에서는 System.out.print() 보다 logger를 지향하는게 좋을 것 같다.
-결론 많이 많이 공부를 해야겠다..