logging: Support turning off roll compression via Caddyfile (#4505)

This commit is contained in:
Francis Lavoie 2022-01-04 14:11:27 -05:00 committed by GitHub
parent e9dde23024
commit 249adc1c87
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 13 additions and 0 deletions

View file

@ -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

View file

@ -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) {