我尝试让 Tomcat 有条件地跳过日志记录,因此访问日志中不会充满大量本地应用程序到应用程序的通信条目。
目前我在 server.xml 中有以下内容:
<Valve className="org.apache.catalina.valves.RemoteIpValve" />
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="/var/log/alfresco"
prefix="tomcat.access." suffix=".log" conditionUnless="???" pattern="combined" />
如您所见,我使用 RemoteIpValve 向我显示 X-Forwarded-For 值,而不是本地 IP。但是为了过滤实际的日志记录,我可以看到我可以在 Tomcat >7.0.30(我使用的)中使用“conditionUnless”。但是经过大量搜索后,我找不到任何工作示例和/或更详细的说明,而不是有关此 Valve 的 Tomcat 文档(https://tomcat.apache.org/tomcat-7.0-doc/config/valve. html#Access_Log_Valve)。
有人可以通过示例和/或有关如何排除以下内容的指示来帮助我:
- 一切都来自 IP "127.0.0.1" 和/或
- 到应用程序/相对 URL 的所有流量:“/abc/.*”
不幸的是,我已经填写了“/abc/.*”作为 conditionUnless 的值(代替问号),但这并没有做任何事情。