diff options
author | 2017-09-04 19:33:48 +0800 | |
---|---|---|
committer | 2017-09-04 19:34:03 +0800 | |
commit | c4a34b2fe6f7317bf17fa478a734e5bdab30c278 (patch) | |
tree | 8b65034b069a657f2531137b389a0c1d4919b79a /src/kube2msb/vendor/github.com/Sirupsen/logrus/hooks.go | |
parent | cc0c6e3ed8fc6c9fd96ef843b866070f52537185 (diff) |
Use maven to build kube2msb
Issue-Id: OOM-61
Change-Id: Ic7e733c95e28b75b66535b343ae22c893db24531
Signed-off-by: HuabingZhao <zhao.huabing@zte.com.cn>
Diffstat (limited to 'src/kube2msb/vendor/github.com/Sirupsen/logrus/hooks.go')
-rw-r--r-- | src/kube2msb/vendor/github.com/Sirupsen/logrus/hooks.go | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/kube2msb/vendor/github.com/Sirupsen/logrus/hooks.go b/src/kube2msb/vendor/github.com/Sirupsen/logrus/hooks.go new file mode 100644 index 0000000..0da2b36 --- /dev/null +++ b/src/kube2msb/vendor/github.com/Sirupsen/logrus/hooks.go @@ -0,0 +1,34 @@ +package logrus + +// A hook to be fired when logging on the logging levels returned from +// `Levels()` on your implementation of the interface. Note that this is not +// fired in a goroutine or a channel with workers, you should handle such +// functionality yourself if your call is non-blocking and you don't wish for +// the logging calls for levels returned from `Levels()` to block. +type Hook interface { + Levels() []Level + Fire(*Entry) error +} + +// Internal type for storing the hooks on a logger instance. +type levelHooks map[Level][]Hook + +// Add a hook to an instance of logger. This is called with +// `log.Hooks.Add(new(MyHook))` where `MyHook` implements the `Hook` interface. +func (hooks levelHooks) Add(hook Hook) { + for _, level := range hook.Levels() { + hooks[level] = append(hooks[level], hook) + } +} + +// Fire all the hooks for the passed level. Used by `entry.log` to fire +// appropriate hooks for a log entry. +func (hooks levelHooks) Fire(level Level, entry *Entry) error { + for _, hook := range hooks[level] { + if err := hook.Fire(entry); err != nil { + return err + } + } + + return nil +} |