aboutsummaryrefslogtreecommitdiff
path: root/middleware/pkg/roller/roller.go
diff options
context:
space:
mode:
Diffstat (limited to 'middleware/pkg/roller/roller.go')
-rw-r--r--middleware/pkg/roller/roller.go62
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,
- }
-}