Class ServiceEmitter

java.lang.Object
org.apache.druid.java.util.emitter.service.ServiceEmitter
All Implemented Interfaces:
Closeable, Flushable, AutoCloseable, Emitter

public class ServiceEmitter extends Object implements Emitter
  • Constructor Details

    • ServiceEmitter

      public ServiceEmitter(String service, String host, Emitter emitter)
    • ServiceEmitter

      public ServiceEmitter(String service, String host, Emitter emitter, com.google.common.collect.ImmutableMap<String,String> otherServiceDimensions)
  • Method Details

    • start

      public void start()
      Specified by:
      start in interface Emitter
    • emit

      public void emit(Event event)
      Description copied from interface: Emitter
      Emit an event. This method must not throw exceptions or block. If an implementation receives too many events and internal queues fill up, it should drop events rather than blocking or consuming excessive memory. If an implementation receives input it considers to be invalid, or has an internal problem, it should deal with that by logging a warning rather than throwing an exception. Implementations that log warnings should consider throttling warnings to avoid excessive logs, since a busy Druid cluster can emit a high volume of metric events.
      Specified by:
      emit in interface Emitter
    • emit

      public <E extends Event> void emit(ServiceEventBuilder<E> builder)
    • flush

      public void flush() throws IOException
      Specified by:
      flush in interface Emitter
      Specified by:
      flush in interface Flushable
      Throws:
      IOException
    • close

      public void close() throws IOException
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Specified by:
      close in interface Emitter
      Throws:
      IOException
    • toString

      public String toString()
      Overrides:
      toString in class Object