내 웹 응용 프로그램에서 시작할 때로드되는 서블릿에 PropertyConfigurator.configure(filepath)
함수를 사용하여 웹 응용 프로그램에서 로깅을 초기화하고 있습니다.로그 파일 대신 유닉스에서 catalina.out에 로깅
String log4jfile = getInitParameter("log4j-init-file");
if (log4jfile != null) {
String propfile = getServletContext().getRealPath(log4jfile);
PropertyConfigurator.configure(propfile);
내가 WEB_INF/클래스 디렉토리에 내 log4j.properties 파일을 배치하고
로 파일을 지정하고log4j.appender.rollingFile.File=${catalina.home}/logs/myapp.log
내 루트 로거가 초기에는 더로 구성되었다
log4j.rootLogger=DEBUG, rollingFile,console
(콘솔 속성도 catalina.out에 문장을 기록합니다)
Windows에서 로깅은 로그 파일에 나타나는 문과 함께 정상적으로 발생하는 것으로 보입니다.
유닉스에서 내 로깅 문은 실제 로그 파일 (초기화 서블릿의 로그 만 포함) 대신 catalina.out으로 리디렉션됩니다. 모든 후속 로그가 catalina.out에 나타납니다.
이렇게하면 log4j가 제대로 설정되지 않았지만 원인을 파악할 수 없다고 생각합니다. 아무도 내가 문제의 원인을 파악할 수 없습니까?
덕분에 사전에 그것은 당신이 사용중인 서버에 따라 달라집니다
Tomcat 버전의 차이점을 설명 할 수 있습니까? –