我已经读过,作为一种良好的安全实践,启用使用日志来识别攻击源等是很好的。
这可以使用AccessLogValve
.
我的问题是是否有人有使用它的经验,以及它是否对生产环境中的性能有任何影响。
谢谢
我已经读过,作为一种良好的安全实践,启用使用日志来识别攻击源等是很好的。
这可以使用AccessLogValve
.
我的问题是是否有人有使用它的经验,以及它是否对生产环境中的性能有任何影响。
谢谢
是的,有性能指标。
它有多大的影响取决于您的站点支持的体积。如果您每分钟有数千个请求,那么这可能不是一个好主意。
Tomcat 邮件列表中讨论了早期版本的一些问题
Tomcat 在 5.5 中还引入了 FastCommonAccessLogValve,但它似乎从 6 开始就被弃用了。
相反,您可以做的是过滤您希望记录的请求模式或 IP 地址(如果这种用例可能),然后仅记录它们。这不是使用内置 Valve,而是使用自定义过滤器。尝试任何适合你的方法
日志包含的数据越多,日志写入访问就越慢。您需要确保您的访问日志已logrotate
过时。在 linux 机器上,大多数时候都有一个像“logrotated”这样的守护进程,如果配置正确,它会管理日志大小和轮换。
您所做的任何事情都会对性能产生影响。有些情况会迫使您使用访问日志。如果您对 Web 服务器运行JMeter ,您可以衡量影响。你会看到影响不会挂起你的系统或任何戏剧性的东西......
这种影响取决于太多的因素,所以衡量自己会给你一个明确的结果。毕竟所有访问日志文件都是为了在生产环境中使用。
我们一直使用电子商店的访问日志文件。它们提供有用的用户访问行为信息。标记也会对性能产生影响。不过,如果您想要更高的准确性,您可能必须同时使用这两种方法。
Rich Internet Applications 和 Ajax 疏远了访问方案,将更多的处理交给了客户端的浏览器。GWT 应用程序,即使 tomcat 访问文件变得无用并且标记将是必要的。
根据数据仓库原则,使您的日志文件可旋转以保持它们的合理大小,并将它们 ftp 到另一个系统以便处理它们。