2016-09-23 70 views
0

我使用嵌入在我的应用程序中的jetty 8.1。我使用了一个QueuedThreadPool,并且我有一个HandlerCollection和一组ServletContextHandler。我的问题是,即使设置我在我的日志中看到的池的名称线程名称是像[myPrefixName - 1233/theFullEndpoint/xxx/yyy与参数]不同当然每收到每个请求Jetty 8 QueuedThreadPool线程名称

我想以避免在线程名称内存在带参数的完整端点。我试着用logback配置,但据我所知,logback只能显示线程名称的最后一个x char,而不是第一个。 如何告诉jetty从线程名称中删除端点名称?

+0

码头8是EOL(生命终结),考虑升级。 –

回答

0

你有org.eclipse.jetty.server.handler.DebugHandler启用和激活,禁用/删除,你的线程命名将恢复正常。

+0

它是否默认启用?我只是添加了一个DefaultHandler,但从未添加这个DebugHandler .. – Raffaele

+0

Jetty 8是EOL,现在默认是古代历史。需要挖掘源代码档案才能真正知道答案。有些东西是设置活动的'Thread.setName()'。传统上,只有'DebugHandler'这样做。 *注意:Jetty项目超过了Jetty 8.1.x以上的数千次提交(现在已发布4个主要版本,其中还有2个主动开发)* –

+0

我查看了源代码,并且在AbstractHttpConnection只有在记录器配置为“调试”的情况下。最简单的解决方案不是登录调试级别。否则,可以重写AbstractHttpConnection的行为或编写它自己的Logger实现(我需要检查isDebugEnabled方法的使用位置)。感谢您的建议。我想升级,但目前,我不能因为客户的限制而升级.. – Raffaele