diff options
Diffstat (limited to 'middleware/pkg/roller/roller.go')
-rw-r--r-- | middleware/pkg/roller/roller.go | 62 |
1 files changed, 0 insertions, 62 deletions
diff --git a/middleware/pkg/roller/roller.go b/middleware/pkg/roller/roller.go deleted file mode 100644 index c60494736..000000000 --- a/middleware/pkg/roller/roller.go +++ /dev/null @@ -1,62 +0,0 @@ -package roller - -import ( - "io" - "strconv" - - "github.com/mholt/caddy" - "gopkg.in/natefinch/lumberjack.v2" -) - -func Parse(c *caddy.Controller) (*LogRoller, error) { - var size, age, keep int - // This is kind of a hack to support nested blocks: - // As we are already in a block: either log or errors, - // c.nesting > 0 but, as soon as c meets a }, it thinks - // the block is over and return false for c.NextBlock. - for c.NextBlock() { - what := c.Val() - if !c.NextArg() { - return nil, c.ArgErr() - } - value := c.Val() - var err error - switch what { - case "size": - size, err = strconv.Atoi(value) - case "age": - age, err = strconv.Atoi(value) - case "keep": - keep, err = strconv.Atoi(value) - } - if err != nil { - return nil, err - } - } - return &LogRoller{ - MaxSize: size, - MaxAge: age, - MaxBackups: keep, - LocalTime: true, - }, nil -} - -// LogRoller implements a middleware that provides a rolling logger. -type LogRoller struct { - Filename string - MaxSize int - MaxAge int - MaxBackups int - LocalTime bool -} - -// GetLogWriter returns an io.Writer that writes to a rolling logger. -func (l LogRoller) GetLogWriter() io.Writer { - return &lumberjack.Logger{ - Filename: l.Filename, - MaxSize: l.MaxSize, - MaxAge: l.MaxAge, - MaxBackups: l.MaxBackups, - LocalTime: l.LocalTime, - } -} |