# Interface AbstractAccessLogValve.AccessLogElement

All Known Implementing Classes:
  `AbstractAccessLogValve.ByteSentElement, AbstractAccessLogValve.ConnectionStatusElement, AbstractAccessLogValve.CookieElement, AbstractAccessLogValve.DateAndTimeElement, AbstractAccessLogValve.ElapsedTimeElement, AbstractAccessLogValve.FirstByteTimeElement, AbstractAccessLogValve.HeaderElement, AbstractAccessLogValve.HostElement, AbstractAccessLogValve.HttpStatusCodeElement, AbstractAccessLogValve.IdentifierElement, AbstractAccessLogValve.LocalAddrElement, AbstractAccessLogValve.LocalServerNameElement, AbstractAccessLogValve.LogicalUserNameElement, AbstractAccessLogValve.MethodElement, AbstractAccessLogValve.PortElement, AbstractAccessLogValve.ProtocolElement, AbstractAccessLogValve.QueryElement, AbstractAccessLogValve.RemoteAddrElement, AbstractAccessLogValve.RequestAttributeElement, AbstractAccessLogValve.RequestElement, AbstractAccessLogValve.RequestURIElement, AbstractAccessLogValve.ResponseHeaderElement, AbstractAccessLogValve.SessionAttributeElement, AbstractAccessLogValve.SessionIdElement, AbstractAccessLogValve.StringElement, AbstractAccessLogValve.ThreadNameElement, AbstractAccessLogValve.UserElement, ExtendedAccessLogValve.CookieElement, ExtendedAccessLogValve.DateElement, ExtendedAccessLogValve.RequestAttributeElement, ExtendedAccessLogValve.RequestHeaderElement, ExtendedAccessLogValve.RequestParameterElement, ExtendedAccessLogValve.ResponseAllHeaderElement, ExtendedAccessLogValve.ResponseHeaderElement, ExtendedAccessLogValve.ServletContextElement, ExtendedAccessLogValve.SessionAttributeElement, ExtendedAccessLogValve.TimeElement, JsonAccessLogValve.CharElement`

Enclosing class:
  `AbstractAccessLogValve`

protected static interface AbstractAccessLogValve.AccessLogElement
AccessLogElement writes the partial message into the buffer.

At least one method must be implemented else a loop will occur.

When the deprecated method is removed in Tomcat 12, the default implementation for `addElement(CharArrayWriter, Request, Response, long)` will also be removed.

## Method Summary

Modifier and Type
Method
Description
`default void`
`addElement(CharArrayWriter buf, Date date, Request request, Response response, long time)`
Deprecated.
Unused.
`default void`
`addElement(CharArrayWriter buf, Request request, Response response, long time)`
Called to create an access log entry.

## Method Details

### addElement

@Deprecated default void addElement(CharArrayWriter buf, Date date, Request request, Response response, long time)
Deprecated.
Unused. Will be removed in Tomcat 12. Use `addElement(CharArrayWriter, Request, Response, long)`
Called to create an access log entry.

Parameters:
  `buf` - The buffer to which the log element should be added
  `date` - The time stamp for the start of the request
  `request` - The request that triggered this access log entry
  `response` - The response to the request that triggered this access log entry
  `time` - The time taken in nanoseconds to process the request

### addElement

default void addElement(CharArrayWriter buf, Request request, Response response, long time)
Called to create an access log entry.

Parameters:
  `buf` - The buffer to which the log element should be added
  `request` - The request that triggered this access log entry
  `response` - The response to the request that triggered this access log entry
  `time` - The time taken in nanoseconds to process the request