orbiter/utils/hook/channel.go
Abdulrahman Solanke ad6ccde1bb switch to go mod
2023-05-19 00:58:50 +01:00

27 lines
381 B
Go

package hook
import "github.com/sirupsen/logrus"
type Channel struct {
c chan *logrus.Entry
}
func NewChannelHook(cc chan *logrus.Entry) Channel {
return Channel{
c: cc,
}
}
func (channel Channel) Levels() []logrus.Level {
return logrus.AllLevels
}
func (channel Channel) Fire(entry *logrus.Entry) error {
select {
case channel.c <- entry:
default:
}
return nil
}