PingDirectory

Configuring HTTP operation loggers

Interactions between servlet extensions and HTTP clients are generally not recorded in the server access log unless a servlet extension performs internal operations to interact with data held in the PingDirectory server.

About this task

To capture information about communication with HTTP clients, you must configure one or more HTTP operations loggers.

By default, the server comes with a single HTTP operation logger implementation, which uses the standard W3C common log format. It records messages in the following format.

127.0.0.1 - - [01/Jan/2012:00:00:00 -0600]"GET/hello HTTP/1.1" 200 113

The log message contains the following elements:

  • The IP address of the client that issued the request

  • The RFC 1413 (ident) identity of the client

    Because the ident protocol is not typically provided by HTTP clients, the HTTP connection handler never requests this information. This identity is always represented as a dash to indicate that information is not available.

  • The authenticated identity determined for the request by HTTP authentication or a dash to indicate that the request was not authenticated

  • The time that the request was received

  • The request issued by the client, including the HTTP method, path and optional query string, and the HTTP protocol version used

  • The integer representation of the HTTP status code for the response to the client

  • The number of bytes included in the body of the response to the client

Steps

  • To configure an HTTP operation logger to use this common log format, create a new instance of a Common Log File HTTP Operation Log Publisher object.

    1. Specify the path and name for the active log file.

    2. Specify the rotation and retention policies to manage the log files.

      Properties for Common Log File HTTP Operation Log Publisher objects generally have the same meaning and use as they do for other kinds of loggers.

  • To create custom Java-based or Groovy-scripted HTTP operation loggers using the Third Party HTTP Operation Log Publisher and Groovy Scripted HTTP Operation Log Publisher object types, use the Server SDK.