Events
Event is one thing that happened: a source, its fields and when. dachshund.emit() builds one.
import dachshund
dachshund.emit("latency", value=96)
dachshund.storage.events.Event
dataclass
Event(source, payload=dict(), at=(lambda: now(tz=utc))())
Something that happened in the application.
Example
Event("latency", {"value": 96})
source
instance-attribute
source
payload
class-attribute
instance-attribute
payload = field(default_factory=dict)
at
class-attribute
instance-attribute
at = field(default_factory=lambda: datetime.now(tz=timezone.utc))