mirror of
https://github.com/grassrootseconomics/eth-tracker.git
synced 2025-05-07 14:51:04 +02:00
31 lines
481 B
Go
31 lines
481 B
Go
package emitter
|
|
|
|
import (
|
|
"context"
|
|
"encoding/json"
|
|
"log/slog"
|
|
)
|
|
|
|
type (
|
|
ConsoleEmitter struct {
|
|
logg *slog.Logger
|
|
}
|
|
)
|
|
|
|
func NewConsoleEmitter(logg *slog.Logger) *ConsoleEmitter {
|
|
return &ConsoleEmitter{
|
|
logg: logg,
|
|
}
|
|
}
|
|
|
|
func (l *ConsoleEmitter) Emit(_ context.Context, payload []byte) error {
|
|
var event map[string]interface{}
|
|
|
|
if err := json.Unmarshal(payload, &event); err != nil {
|
|
return err
|
|
}
|
|
|
|
l.logg.Info("emitted event", "json_payload", event)
|
|
return nil
|
|
}
|