Class |
|
---|---|
Component |
|
ThreadNamingPipelineServlet
modifies a request’s thread name by appending session- and user-specific information. This servlet can be useful in troubleshooting hanging threads for a given site, as the appended data can help identify the source of the problem—for example, hanging threads that all share the same remote user IP address.
As installed, the servlet class appends the following data to the original thread name:
Request URI
Session ID
Remote user IP address
User profile ID
For example, given the following JBoss HTTP handler thread name:
http-0.0.0.0-8180-2
ThreadNamingPipelineServlet
might modify the thread name as follows:
http-0.0.0.0-8180-2 requestURI=/PioneerCycling/example.jsp jsessionid=4CDA4BC58E0F38F52AA7F87E06446888.drp1 remoteAddr=127.0.0.1 userid=1240001
ThreadNamingPipelineServlet
is enabled when its enabled
property is true
(the default). You may want to disable it in a production environment by setting enabled
to false
.
Servlet Properties
The servlet component is configured as follows:
$class=atg.userprofiling.ProfileThreadNamingPipelineServlet insertAfterServlet=ProfileRequestServlet profilePath=/atg/userprofiling/Profile
Inserting in the Request Handling Pipeline
To insert this servlet in the pipeline at server startup, add it to the /atg/dynamo/servlet/Initial.initialServices
property as follows:
$class=atg.nucleus.InitialService initialServices+=dafpipeline/ThreadNamingPipelineServlet