0

我在预装了tomcat(版本6)的Linux服务器上工作,我们没有管理员访问权限。我正在尝试更改日志文件位置(catalina.out),但它不起作用。

我通过添加以下内容更新了 tomcat6.conf 文件

CATALINA_BASE="ORIG_LOC_FOLDER"
CATALINA_HOME="ORIG_LOC_FOLDER"
CATALINA_OUT="XXXX/catalina.out"

我重新启动了tomcat,但它仍然将日志写入旧位置的旧文件。我无法在 catalina.sh 中更改,因为我找不到该文件。还有什么我需要做的吗?

谢谢。

4

1 回答 1

0

的设置catalina.out可以在 中找到$CATALINA_BASE/conf/logging.properties

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

复制并修改此文件后,您可以通过此环境变量覆盖 Tomcat 的日志记录配置文件。

LOGGING_CONFIG="-Djava.util.logging.config.file=$CATALINA_BASE/conf/logging.properties"

6/25 更新

另一种解决方案是java.util.logging通过程序更改配置。这是示例代码。

//import java.util.logging.*;
Logger logger = Logger.getLogger("");
Handler[] ha = logger.getHandlers();
for (int i = 0; i < ha.length; i++) {
    logger.removeHandler(ha[i]);
    ha[i].close();
}
Handler fh = new FileHandler("%t/out.log");
fh.setFormatter(new SimpleFormatter());
fh.setLevel (Level.FINE);
logger.addHandler (fh);
logger.setLevel (Level.FINE);
于 2016-06-19T14:59:45.240 回答