struct Log::Emitter

Overview

Helper DSL module for emitting log entries with data.

Defined in:

log/main.cr

Instance Method Summary

Instance Method Detail

def emit(message : String, data : Metadata | Hash | NamedTuple) : EntrySource

def emit(message : String) : EntrySource

Emits a logs entry with a message, and data attached to

Log.info &.emit("Program started")                         # No data, same as Log.info { "Program started" }
Log.info &.emit("User logged in", user_id: 42)             # With entry data
Log.info &.emit(action: "Logged in", user_id: 42)          # Empty string message, only data
Log.error exception: ex, &.emit("Oops", account: {id: 42}) # With data and exception

def emit(data : Metadata | Hash | NamedTuple) : EntrySource

def emit(message : String, **kwargs) : EntrySource

def emit(**kwargs) : EntrySource

© 2012–2021 Manas Technology Solutions.
Licensed under the Apache License, Version 2.0.
https://crystal-lang.org/api/1.2.1/Log/Emitter.html