내 서플렛에 대한 Tomcat_home/Logs의 이름이 지정된 로그를 어떻게 작성합니까?

StackOverflow https://stackoverflow.com/questions/201700

  •  03-07-2019
  •  | 
  •  

문제

나는 현재 Tomcat을 사용하여 서틀 내에서 가장 간단한 방법을 통해 로그인하고 있습니다. ServletConfig.getServletContext ()를 사용하여 활동을 기록하려면 로그를 사용합니다. 이것은 $ tomcat_home/logs의 localhost.yyy-mm-dd.log에 씁니다.

절대적으로 필요한 경우이 로깅 메커니즘의 단순성에서 벗어나고 싶지 않습니다. 하지만 로그 파일의 이름을 지정하고 싶습니다. "localhost".yyyy-mm-dd.log 대신 "myappname".yyyy-mm-dd.log에 쓸 수있는 방법이 있습니까? 나는 내 자신의 메커니즘을 만들 수 있다는 것을 알고 있지만 다시, 여기서 단순성을 찾고 있습니다.

Log4J와 같은 완전한 프레임 워크에서 멀리 떨어져 있기를 바랍니다.

도움이 되었습니까?

해결책

Tomcat 6.x의 경우 conf/logging.properties에서 로깅 구성을 변경할 수 있습니다.

그러나 나는 log4J와 별도의 구성을 선호합니다 ...

다른 팁

그래서 내 서블릿 코드를 건드리지 않고 $ tomcat_home/conf/logging.properties를 통한 방법이 있습니다 ...

전에...

handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4admin.org.apache.juli.FileHandler, 5host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler

후에...

handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4admin.org.apache.juli.FileHandler, 5host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler, 6localhost.org.apache.juli.FileHandler

그럼 추가 ...

6localhost.org.apache.juli.FileHandler.level = FINE
6localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
6localhost.org.apache.juli.FileHandler.prefix = myAppName.

그리고 추가 ...

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/myAppName].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/myAppName].handlers = 6localhost.org.apache.juli.FileHandler

그리고 Bounce Tomcat. 이것은 단순한 servletconfig.getservletcontext (). log () 메시지만으로 $ tomcat_home/logs/myappname.2008-10-14.log를 만들었습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top