Documentation ¶
Index ¶
- func EventArgsValueAs[T any](e *EventArgs) *T
- func NewShortUUID() string
- func NewULID() string
- func NewUUID() string
- func Publish[T any](v *T)
- func PublishAsync[T any](v *T)
- func SetLogger(loggerAdapter LoggerAdapter)
- func Subscribe[T any](observer IEventObserver)
- func SubscribeWithAction[T any](fn func(v *EventArgs))
- type CaptureLoggerAdapter
- func (c *CaptureLoggerAdapter) Captured() map[LogLevel][]CapturedMessage
- func (c *CaptureLoggerAdapter) Debug(msg string, fields LogFields)
- func (c *CaptureLoggerAdapter) Error(msg string, err error, fields LogFields)
- func (c *CaptureLoggerAdapter) Has(msg CapturedMessage) bool
- func (c *CaptureLoggerAdapter) HasError(err error) bool
- func (c *CaptureLoggerAdapter) Info(msg string, fields LogFields)
- func (c *CaptureLoggerAdapter) Trace(msg string, fields LogFields)
- func (c *CaptureLoggerAdapter) With(fields LogFields) LoggerAdapter
- type CapturedMessage
- type EventArgs
- type IEventObserver
- type LogFields
- type LogLevel
- type LoggerAdapter
- type NopLogger
- type StdLoggerAdapter
- func (l *StdLoggerAdapter) Debug(msg string, fields LogFields)
- func (l *StdLoggerAdapter) Error(msg string, err error, fields LogFields)
- func (l *StdLoggerAdapter) Info(msg string, fields LogFields)
- func (l *StdLoggerAdapter) Trace(msg string, fields LogFields)
- func (l *StdLoggerAdapter) With(fields LogFields) LoggerAdapter
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func EventArgsValueAs ¶
func SetLogger ¶
func SetLogger(loggerAdapter LoggerAdapter)
func Subscribe ¶
func Subscribe[T any](observer IEventObserver)
func SubscribeWithAction ¶
Types ¶
type CaptureLoggerAdapter ¶
type CaptureLoggerAdapter struct {
// contains filtered or unexported fields
}
CaptureLoggerAdapter is a logger which captures all logs. This logger is mostly useful for testing logging.
func NewCaptureLogger ¶
func NewCaptureLogger() *CaptureLoggerAdapter
func (*CaptureLoggerAdapter) Captured ¶
func (c *CaptureLoggerAdapter) Captured() map[LogLevel][]CapturedMessage
func (*CaptureLoggerAdapter) Debug ¶
func (c *CaptureLoggerAdapter) Debug(msg string, fields LogFields)
func (*CaptureLoggerAdapter) Error ¶
func (c *CaptureLoggerAdapter) Error(msg string, err error, fields LogFields)
func (*CaptureLoggerAdapter) Has ¶
func (c *CaptureLoggerAdapter) Has(msg CapturedMessage) bool
func (*CaptureLoggerAdapter) HasError ¶
func (c *CaptureLoggerAdapter) HasError(err error) bool
func (*CaptureLoggerAdapter) Info ¶
func (c *CaptureLoggerAdapter) Info(msg string, fields LogFields)
func (*CaptureLoggerAdapter) Trace ¶
func (c *CaptureLoggerAdapter) Trace(msg string, fields LogFields)
func (*CaptureLoggerAdapter) With ¶
func (c *CaptureLoggerAdapter) With(fields LogFields) LoggerAdapter
type CapturedMessage ¶
type EventArgs ¶
type EventArgs struct {
// contains filtered or unexported fields
}
func NewEventArgs ¶
func NewEventArgs(v *interface{}) *EventArgs
func (*EventArgs) Context ¶
Context returns the message's context. To change the context, use SetContext.
The returned context is always non-nil; it defaults to the background context.
func (*EventArgs) SetContext ¶
SetContext sets provided context to the message.
type IEventObserver ¶
type IEventObserver interface {
Notify(e *EventArgs)
}
func EventObserverFromAction ¶
func EventObserverFromAction(action func(*EventArgs)) IEventObserver
type LogFields ¶
type LogFields map[string]interface{}
LogFields is the logger's key-value list of fields.
type LoggerAdapter ¶
type LoggerAdapter interface { Error(msg string, err error, fields LogFields) Info(msg string, fields LogFields) Debug(msg string, fields LogFields) Trace(msg string, fields LogFields) With(fields LogFields) LoggerAdapter }
LoggerAdapter is an interface, that you need to implement to support Watermill logging. You can use StdLoggerAdapter as a reference implementation.
func NewStdLogger ¶
func NewStdLogger(debug, trace bool) LoggerAdapter
NewStdLogger creates StdLoggerAdapter which sends all logs to stderr.
func NewStdLoggerWithOut ¶
func NewStdLoggerWithOut(out io.Writer, debug bool, trace bool) LoggerAdapter
NewStdLoggerWithOut creates StdLoggerAdapter which sends all logs to provided io.Writer.
type NopLogger ¶
type NopLogger struct{}
NopLogger is a logger which discards all logs.
func (NopLogger) With ¶
func (l NopLogger) With(fields LogFields) LoggerAdapter
type StdLoggerAdapter ¶
type StdLoggerAdapter struct { ErrorLogger *log.Logger InfoLogger *log.Logger DebugLogger *log.Logger TraceLogger *log.Logger // contains filtered or unexported fields }
StdLoggerAdapter is a logger implementation, which sends all logs to provided standard output.
func (*StdLoggerAdapter) Debug ¶
func (l *StdLoggerAdapter) Debug(msg string, fields LogFields)
func (*StdLoggerAdapter) Error ¶
func (l *StdLoggerAdapter) Error(msg string, err error, fields LogFields)
func (*StdLoggerAdapter) Info ¶
func (l *StdLoggerAdapter) Info(msg string, fields LogFields)
func (*StdLoggerAdapter) Trace ¶
func (l *StdLoggerAdapter) Trace(msg string, fields LogFields)
func (*StdLoggerAdapter) With ¶
func (l *StdLoggerAdapter) With(fields LogFields) LoggerAdapter