Class NamedConverter

All Implemented Interfaces:
ContextAware, LifeCycle
Direct Known Subclasses:
ClassOfCallerConverter, LoggerConverter

public abstract class NamedConverter extends ClassicConverter
In case abbreviation service is requested, NamedConverter will convert fully qualified class names to their abbreviated from. NamedConverter instances will store abbreviated names in an internal LRU cache. The cache will double in size if he cache miss rate is consistently above 30%. Assuming a high miss rate, the doubling until a maximum size of 2048 is attained. If at this point the cache miss rate is still too high, NamedConverter will revert to non cached behavior. The general assumption here is that a large majority of logger names are concentrated within a group of approximately 1000 logger names.
Author:
Ceki Gulcu
  • Constructor Details

    • NamedConverter

      public NamedConverter()
  • Method Details

    • getFullyQualifiedName

      protected abstract String getFullyQualifiedName(ILoggingEvent event)
      Gets fully qualified name from event.
      Parameters:
      event - The LoggingEvent to process, cannot not be null.
      Returns:
      name, must not be null.
    • start

      public void start()
      Specified by:
      start in interface LifeCycle
      Overrides:
      start in class DynamicConverter<ILoggingEvent>
    • convert

      public String convert(ILoggingEvent event)
      Specified by:
      convert in class Converter<ILoggingEvent>
    • getCacheMissRate

      public double getCacheMissRate()
    • getCacheMisses

      public int getCacheMisses()