Enable Access Logs in JBoss 7
JBoss 7 is slightly different than earlier version JBoss 5 or 6.
The procedure to enable access logs in JBoss 7 is also changed, and you must be familiar with how to enable access logs in JBoss 7.
- Go to JBoss/standalone/configuration folder
- Add the following in
standalone.xml
look for domain:web syntax and ensure to add before closing </virtual-server> tag
<access-log pattern="%a %t %H %p %U %s %S %T" rotate="true">
<directory path="." relative-to="jboss.server.log.dir"/>
</access-log>
Ex:
<subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host" native="false"> <connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/> <virtual-server name="default-host" enable-welcome-root="true"> <alias name="localhost"/> <alias name="example.com"/> <access-log pattern="%a %t %H %p %U %s %S %T" rotate="true"> <directory path="." relative-to="jboss.server.log.dir"/> </access-log> </virtual-server> </subsystem>
- Restart JBoss 7 server and verify the access logs under log folder.
You may refer following for valve patterns to capture in the access log.
%a– Remote IP address
%A– Local IP address
%b– Bytes sent, excluding HTTP headers, or ‘-‘ if zero
%B– Bytes sent, excluding HTTP headers
%h– Remote hostname (or IP address if resolveHostsis false)
%H– Request protocol
%l– Remote logical username from identd (always returns ‘-‘)
%m– Request method (GET, POST, etc.)
%p– Local port on which this request was received
%q– Query string (prepended with a ‘?’ if it exists)
%r– First line of the request (method and request URI)
%s– HTTP status code of the response
%S– User session ID
%t– Date and time, in Common Log Format
%u– Remote user that was authenticated (if any), else ‘-‘
%U– Requested URL path
%v– Local server name
%D– Time is taken to process the request, in Millis
%T– Time is taken to process the request, in seconds
%I– current request thread name (can compare later with stack traces)
I hope now you have an idea how to enable access logs in JBoss for analyzing. Learn more about JBoss here.