Class LogstashAccessFormatter

All Implemented Interfaces:
ContextAware, LifeCycle

public class LogstashAccessFormatter extends AccessEventCompositeJsonFormatter
A AccessEventCompositeJsonFormatter that contains a common pre-defined set of JsonProviders. The included providers are configured via properties on this formatter, rather than configuring the providers directly. This leads to a somewhat simpler configuration definitions. You cannot remove any of the pre-defined providers, but you can add additional providers via addProvider(JsonProvider). If you would like full control over the providers, you should instead use AccessEventCompositeJsonFormatter directly.
  • Field Details

    • fieldNames

      protected LogstashAccessFieldNames fieldNames
      The field names to use when writing the access event fields
  • Constructor Details

    • LogstashAccessFormatter

      public LogstashAccessFormatter(ContextAware declaredOrigin)
  • Method Details

    • start

      public void start()
      Specified by:
      start in interface LifeCycle
      Overrides:
      start in class AbstractCompositeJsonFormatter<IAccessEvent>
    • configureProviderFieldNames

      protected void configureProviderFieldNames()
    • addProvider

      public void addProvider(JsonProvider<IAccessEvent> provider)
    • getProviders

      public AccessEventJsonProviders getProviders()
      Overrides:
      getProviders in class AbstractCompositeJsonFormatter<IAccessEvent>
    • getFieldNames

      public LogstashAccessFieldNames getFieldNames()
    • setFieldNames

      public void setFieldNames(LogstashAccessFieldNames fieldNames)
    • getTimeZone

      public String getTimeZone()
    • setTimeZone

      public void setTimeZone(String timeZoneId)
    • getTimestampPattern

      public String getTimestampPattern()
    • setTimestampPattern

      public void setTimestampPattern(String pattern)
    • getCustomFieldsAsString

      public String getCustomFieldsAsString()
    • setCustomFieldsFromString

      public void setCustomFieldsFromString(String customFields)
    • setCustomFields

      public void setCustomFields(JsonNode customFields)
    • getCustomFields

      public JsonNode getCustomFields()
    • getLowerCaseHeaderNames

      public boolean getLowerCaseHeaderNames()
    • setLowerCaseHeaderNames

      public void setLowerCaseHeaderNames(boolean lowerCaseHeaderNames)
      When true, names of headers will be written to JSON output in lower case.
      Parameters:
      lowerCaseHeaderNames - When true, names of headers will be written to JSON output in lower case.
    • getRequestHeaderFilter

      public HeaderFilter getRequestHeaderFilter()
    • setRequestHeaderFilter

      public void setRequestHeaderFilter(HeaderFilter filter)
    • getResponseHeaderFilter

      public HeaderFilter getResponseHeaderFilter()
    • setResponseHeaderFilter

      public void setResponseHeaderFilter(HeaderFilter filter)
    • isIncludeContext

      public boolean isIncludeContext()
    • setIncludeContext

      public void setIncludeContext(boolean includeContext)
    • getMessagePattern

      public String getMessagePattern()
    • setMessagePattern

      public void setMessagePattern(String messagePattern)
    • getVersion

      public String getVersion()
    • setVersion

      public void setVersion(String version)
    • isWriteVersionAsInteger

      public boolean isWriteVersionAsInteger()
    • setWriteVersionAsInteger

      public void setWriteVersionAsInteger(boolean writeVersionAsInteger)
    • setProviders

      public void setProviders(JsonProviders<IAccessEvent> jsonProviders)
      Overrides:
      setProviders in class AccessEventCompositeJsonFormatter