Events API Interface
Status: Experimental
The Event API offers convenience methods for emitting LogRecords that conform to the semantic conventions for Events.
EventLogger
The EventLogger is the entrypoint of the Event API, and is responsible for
emitting Events as LogRecords.
EventLogger Operations
The EventLogger MUST provide functions to:
Create EventLogger
New EventLogger instances are created though a constructor or factory method
on EventLogger.
Parameters:
logger- the delegate Logger used to emitEventsasLogRecords.event_domain- the domain of emitted events, used to set theevent.domainattribute.
Emit Event
Emit a LogRecord representing an Event to the delegate Logger.
This function MAY be named logEvent.
Parameters:
event_name- the Event name. This argument MUST be recorded as aLogRecordattribute with the keyevent.name. Care MUST be taken by the implementation to not override or delete this attribute while the Event is emitted to preserve its identity.logRecord- the LogRecord representing the Event.
Implementation Requirements:
The implementation MUST emit the logRecord to
the logger specified when creating the EventLogger
after making the following changes:
- The
event_domainspecified when creating the EventLogger MUST be set as theevent.domainattribute on thelogRecord. - The
event_nameMUST be set as theevent.nameattribute on thelogRecord.