Interface Emitter
-
- All Superinterfaces:
AutoCloseable
,Closeable
,Flushable
- All Known Implementing Classes:
ComposingEmitter
,HttpPostEmitter
,LoggingEmitter
,NoopEmitter
,ParametrizedUriEmitter
,ServiceEmitter
,SwitchingEmitter
public interface Emitter extends Closeable, Flushable
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
close()
void
emit(Event event)
Emit an event.void
flush()
void
start()
-
-
-
Method Detail
-
start
void start()
-
emit
void emit(Event event)
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.
-
flush
void flush() throws IOException
- Specified by:
flush
in interfaceFlushable
- Throws:
IOException
-
close
void close() throws IOException
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Throws:
IOException
-
-