我有一个grails 3.1.7项目,它使用spring security core 3.1.1并部署到tomcat实例(不确定tomcat版本)。
此行不时出现在日志中:
318-Apr-2018 13:31:20.710严重[localhost-startStop-2]
org.apache.catalina.loader.WebappClassLoaderBase.checkThreadLocalMapForLeaks
Web应用程序[my-app]创建了一个键为
的ThreadLocal 输入[java.lang.ThreadLocal](value [java.lang.ThreadLocal@6678f8db])和类型为
的值 [org.springframework.security.web.firewall.FirewalledResponse](价值
[org.springframework.security.web.firewall.FirewalledResponse@159982ef])
但是在Web应用程序停止时无法将其删除。主题 随着时间的推移会更新,以避免可能的记忆 泄漏。
我知道这是it checks for memory leaks时tomcats正常运行的一部分,似乎大多数人只是选择忽略它。这就是我们过去所做的。这次我们被告知要“修复它”,但鉴于泄漏的threadlocal变量来自Spring安全类,我不确定要修复什么或如何修复它。
所以在我开始尝试调试这个问题之前,有没有人知道这里发生了什么?有没有人见过这个?它是良性的还是我需要做更多的挖掘?我应该告诉安全人员说服他们忽略它?
非常感谢任何帮助!
答案 0 :(得分:0)
原来报告错误的团队确实用“杀死-9”杀死了网络应用程序。有意义的是tomcat在它之后清理干净了。