diff options
| author | Francis Lavoie <lavofr@gmail.com> | 2022-01-04 14:11:27 -0500 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-01-04 12:11:27 -0700 | 
| commit | 249adc1c872ae46e640cfb7c330e332229d8d32a (patch) | |
| tree | d9102381e448710a3530596f73afbf93036ff4d7 | |
| parent | e9dde230247ec5525d4c3803ff99c97e0dc8e348 (diff) | |
logging: Support turning off roll compression via Caddyfile (#4505)
| -rw-r--r-- | caddytest/integration/caddyfile_adapt/log_roll_days.txt | 2 | ||||
| -rw-r--r-- | modules/logging/filewriter.go | 11 | 
2 files changed, 13 insertions, 0 deletions
diff --git a/caddytest/integration/caddyfile_adapt/log_roll_days.txt b/caddytest/integration/caddyfile_adapt/log_roll_days.txt index 2d146f9..5762c92 100644 --- a/caddytest/integration/caddyfile_adapt/log_roll_days.txt +++ b/caddytest/integration/caddyfile_adapt/log_roll_days.txt @@ -3,6 +3,7 @@  log {  	output file /var/log/access.log {  		roll_size 1gb +		roll_uncompressed  		roll_keep 5  		roll_keep_for 90d  	} @@ -20,6 +21,7 @@ log {  				"writer": {  					"filename": "/var/log/access.log",  					"output": "file", +					"roll_gzip": false,  					"roll_keep": 5,  					"roll_keep_days": 90,  					"roll_size_mb": 954 diff --git a/modules/logging/filewriter.go b/modules/logging/filewriter.go index 376deeb..7333fb2 100644 --- a/modules/logging/filewriter.go +++ b/modules/logging/filewriter.go @@ -134,6 +134,7 @@ func (fw FileWriter) OpenWriter() (io.WriteCloser, error) {  //     file <filename> {  //         roll_disabled  //         roll_size     <size> +//         roll_uncompressed  //         roll_keep     <num>  //         roll_keep_for <days>  //     } @@ -141,6 +142,9 @@ func (fw FileWriter) OpenWriter() (io.WriteCloser, error) {  // The roll_size value has megabyte resolution.  // Fractional values are rounded up to the next whole megabyte (MiB).  // +// By default, compression is enabled, but can be turned off by setting +// the roll_uncompressed option. +//  // The roll_keep_for duration has day resolution.  // Fractional values are rounded up to the next whole number of days.  // @@ -177,6 +181,13 @@ func (fw *FileWriter) UnmarshalCaddyfile(d *caddyfile.Dispenser) error {  				}  				fw.RollSizeMB = int(math.Ceil(float64(size) / humanize.MiByte)) +			case "roll_uncompressed": +				var f bool +				fw.RollCompress = &f +				if d.NextArg() { +					return d.ArgErr() +				} +  			case "roll_keep":  				var keepStr string  				if !d.AllArgs(&keepStr) {  | 
