github.com/0xPolygon/supernets2-node@v0.0.0-20230711153321-2fe574524eaa/event/nileventstorage/nileventstorage.go (about) 1 package nileventstorage 2 3 import ( 4 "context" 5 6 "github.com/0xPolygon/supernets2-node/event" 7 "github.com/0xPolygon/supernets2-node/log" 8 ) 9 10 // NilEventStorage is an implementation of the event storage interface 11 // that just logs but does not store the data 12 type NilEventStorage struct { 13 } 14 15 // NewNilEventStorage creates and initializes an instance of NewNilEventStorage 16 func NewNilEventStorage() (*NilEventStorage, error) { 17 return &NilEventStorage{}, nil 18 } 19 20 // LogEvent logs an event following the defined interface 21 func (p *NilEventStorage) LogEvent(ctx context.Context, ev *event.Event) error { 22 LogEvent(ev) 23 return nil 24 } 25 26 // LogEvent actually logs the event 27 func LogEvent(ev *event.Event) { 28 switch ev.Level { 29 case event.Level_Emergency, event.Level_Alert, event.Level_Critical, event.Level_Error: 30 log.Errorf("Event: %+v", ev) 31 case event.Level_Warning, event.Level_Notice: 32 log.Warnf("Event: %+v", ev) 33 case event.Level_Info: 34 log.Infof("Event: %+v", ev) 35 case event.Level_Debug: 36 log.Debugf("Event: %+v", ev) 37 } 38 }