From d0cae7b6edb4896390fd5ff82aea1bac98994bd0 Mon Sep 17 00:00:00 2001 From: Anton Kaliaev Date: Tue, 16 May 2017 11:51:29 +0200 Subject: [PATCH] [log] change helper func --- log/filter.go | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/log/filter.go b/log/filter.go index 9633d88a8..451088838 100644 --- a/log/filter.go +++ b/log/filter.go @@ -17,21 +17,21 @@ func NewFilter(next Logger, options ...Option) Logger { return l } -// NewFilterByLevel wraps next and implements filtering based on a given level. -// Error is returned if level is not info, error or debug. -func NewFilterByLevel(next Logger, lvl string) (Logger, error) { - var option Option +// AllowLevel returns an option for the given level or error if no option exist +// for such level. +func AllowLevel(lvl string) (Option, error) { switch lvl { - case "info": - option = AllowInfo() case "debug": - option = AllowDebug() + return AllowDebug(), nil + case "info": + return AllowInfo(), nil case "error": - option = AllowError() + return AllowError(), nil + case "none": + return AllowNone(), nil default: - return nil, fmt.Errorf("Expected either \"info\", \"debug\" or \"error\" log level, given %v", lvl) + return nil, fmt.Errorf("Expected either \"info\", \"debug\", \"error\" or \"none\" level, given %s", lvl) } - return NewFilter(next, option), nil } type filter struct {