caddyserver/caddy · error

invalid roll_compression: %s

Error message

invalid roll_compression: %s

What it means

Error "invalid roll_compression: %s" thrown in caddyserver/caddy.

Source

Thrown at modules/logging/filewriter.go:273

		compress := true
		fw.RollCompress = &compress
	}
	if fw.RollKeep == 0 {
		fw.RollKeep = 10
	}
	if fw.RollKeepDays == 0 {
		fw.RollKeepDays = 90
	}

	// Determine compression algorithm to use. Priority:
	// 1) explicit RollCompression (none|gzip|zstd)
	// 2) if RollCompress is unset or true -> gzip
	// 3) if RollCompress is false -> none
	var compression string
	if fw.RollCompression != "" {
		compression = strings.ToLower(strings.TrimSpace(fw.RollCompression))
		if compression != "none" && compression != "gzip" && compression != "zstd" {
			return nil, fmt.Errorf("invalid roll_compression: %s", fw.RollCompression)
		}
	} else {
		if fw.RollCompress == nil || *fw.RollCompress {
			compression = "gzip"
		} else {
			compression = "none"
		}
	}

	return &timberjack.Logger{
		Filename:         fw.Filename,
		MaxSize:          fw.RollSizeMB,
		MaxAge:           fw.RollKeepDays,
		MaxBackups:       fw.RollKeep,
		LocalTime:        fw.RollLocalTime,
		Compression:      compression,
		RotationInterval: time.Duration(fw.RollInterval),
		RotateAtMinutes:  fw.RollAtMinutes,

View on GitHub (pinned to 50e54ee279)

Solutions

  1. Use a supported roll_compression value such as 'gzip' or 'zstd', or remove it for no compression.

When it happens

Trigger: Thrown at modules/logging/filewriter.go:273 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of caddyserver/caddy@50e54ee279 (2026-08-15). Data as JSON: /api/errors/c59aa4e54043df09. Report an issue: GitHub.