1

現在、Tomcat を使用して、サーブレット内で最も単純な方法でログを記録しています。ServletConfig.getServletContext().log を使用してアクティビティを記録します。これは、$TOMCAT_HOME/logs の localhost.YYYY-MM-DD.log に書き込みます。

絶対に必要でない限り、このロギング メカニズムの単純さから離れたくありません。しかし、ログファイルに名前を付けたいと思います。「localhost」.YYYY-MM-DD.log ではなく、「myAppName」.YYYY-MM-DD.log に書き込む方法はありますか。独自のメカニズムを作成できることはわかっていますが、ここでも単純さを求めています。

Log4j のような完全なフレームワークから離れたいと思っています。

4

2 に答える 2

0

Tomcat 6.xの場合、conf/logging.propertiesでロギング構成を変更できます。

しかし、私はLog4jを使用した別の構成を好みます...

于 2008-10-14T16:10:42.780 に答える
0

したがって、サーブレットコードに触れずに $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

Tomcat をバウンスします。これにより、単純な ServletConfig.getServletContext().log() メッセージのみで $TOMCAT_HOME/logs/myAppName.2008-10-14.log が作成されました。

于 2008-10-14T17:08:21.090 に答える