This site contains the documentation that is relevant to older WSO2 product versions and offerings.
For the latest WSO2 documentation, visit https://wso2.com/documentation/.

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

Access logs keep track of access to parts of the ESB profile. There are two types of access logs in the ESB:

Service and REST API access Log

By default, access logs related to service/API invocation are disabled for performance reasons. If you want to enable them, change the log level from WARN to INFO for the following entry in the <EI_HOME>/conf/log4j.properties configuration file.

log4j.logger.org.apache.synapse.transport.http.access=INFO

Once enabled, the access logs for the service/API will be written to the <EI_HOME>/repository/logs folder. The default name of the log file is http_access_<YYYY>_<MM>_<DD>.log. For example, http_access_2016_08_20.log will be created for activity on August 20, 2016. The log is rotated on a daily basis.

You can customize the format of this access log by using the following properties in the <EI_HOME>/conf/access-log.properties configuration file:

  • File location: access_log_directory=/logs/wso2esblogs
  • File prefix: access_log_prefix=http_access_
  • File suffix: access_log_suffix=.log
  • File date format: access_log_file_date_format=yyyy-MM-dd
  • Log pattern: access_log_pattern=%{X-Forwarded-For}i %h %l %u %t \"%r\" %s %b \"%{Referer}i\" \"%{User-Agent}i\"
    This default log pattern uses a modified version of the Apache combined log format. The X-Forwarded-For header is appended to the beginning of the usually combined log format. This correctly identifies the original node that sent the request, in situations where requests go through a proxy (such as a load balancer). The X-Forwarded-For header must be present in the incoming request for this to be logged. You can modify this property to use other log patterns as follows:

The Custom Logger supports the below attributes.

AttributeDescription
%a

Remote IP address

%A

Local IP address

%b

Bytes sent, excluding HTTP headers, or '-' if zero

%B

Bytes sent, excluding HTTP headers

%c

Cookie value

%C

Accept header

%e

Accept Encoding

%E

Transfer Encoding

%h

Remote host name (or IP address if enableLookups for the connector is false)

%l

Remote logical username from identd (always returns '-')

%L

Accept Language

%k

Keep Alive

%m

Request method (GET, POST, etc.)

%n

Content Encoding

%r

Request Element

%s

HTTP status code of the response

%S

Accept Chatset

%t

Date and time, in Common Log Format

%T

Content Type

%u

Remote user that was authenticated (if any), else '-'

%U

Requested URL path

%v

Local server name

%V

Vary Header

%x

Connection Header

%Z

Server Header

Management Console Access Log

By default, access logs for the management console are written to the <EI_HOME>/repository/logs/http_access_management_console_<YYYY>_<MM>_<DD>.log file. It is rotated on a daily basis. To customize the management console's access log, including the location where the file is written and the format, you can edit the <EI_HOME>/conf/tomcat/catalina-server.xml file. In this file, under "Valves", you can find the following access log configuration where you can modify the org.apache.catalina.valves.AccessLogValve attributes.

<Valve className="org.apache.catalina.valves.AccessLogValve" directory="${carbon.home}/repository/logs"
               prefix="http_access_management_console_" suffix=".log"
               pattern="combined" />

For more information, see AccessLogValve in the Apache Tomcat documentation.  

  • No labels