【问题标题】:Configure tomcat localhost_access_log externally外部配置tomcat localhost_access_log
【发布时间】:2012-04-01 04:40:32
【问题描述】:

是否可以在不更改server.xml文件的情况下更改tomcatslogs/localhost_access_log.*日志文件的位置?

最佳解决方案是 SystemProperty 或环境变量。我只是不想更改它的默认 tomcat 安装,因为我将几十个 tomcat 部署到不同的主机,这使得这个过程很累而且容易出错。

谢谢

【问题讨论】:

    标签: tomcat logging tomcat6


    【解决方案1】:

    通过以下步骤解决了这个问题:

    • 部署时会在tomcat_home/conf/Catalina/localhost/<contextpath>.xml 中生成一个上下文文件:

    • 删除了 tomcat_home/logs/localhost_access_log.*.txtfiles 的 cron,因为 Context/Valve 配置只是附加的,不会覆盖现有的 AccessLogValve。

    我知道这会将日志文件写入两次,并且您必须知道您的上下文路径,这对我的用例来说都不是问题。另一种选择是删除 server.xml 中的完整 Valve 标记(它会更改 server.xml,但很容易自动化)。

    【讨论】:

      【解决方案2】:

      是的,有可能。详情如下 -
      1 在 conf 文件夹中创建 catalina.properties
      2 在文件中创建变量

      accesslog.file=my_access_log_file

      3 在server.xml中引用为

      directory="logs" prefix="${accesslog.file}" suffix=".log"

      【讨论】:

      • 嗨,我知道我可以在 server.xml 文件中添加 SystemProperties,但诀窍是,我可以更改位置 而不 更改 server.xml 文件,如所述上面?
      • 我不明白怎么做,因为默认的 server.xml 指向一个硬编码的文件名。
      猜你喜欢
      • 2012-07-13
      • 1970-01-01
      • 2015-10-31
      • 2019-08-01
      • 2021-02-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多