Fix newsyslog(8) to use the size of the file instead of the blocks it
takes on disk, as advertised in newsyslog.conf(5). This fixes newsyslog(8) on ZFS with compression enabled to not have large files compared to the expected rotation size. # grep remotes/messages /etc/newsyslog.conf /var/log/remote/messages root:info 640 5 500 * JC # ls -alh /var/log/remote/messages -rw-r----- 1 root info 3.2M Jan 31 20:02 /var/log/remote/messages # newsyslog -vN|grep remote/messages /var/log/remote/messages <5J>: size (Kb): 464 [500] --> skipping # stat -f "st_size: %z st_blocks: %b" /var/log/remote/messages st_size: 3372627 st_blocks: 928 # zfs get -H compressratio zroot/syslogs zroot/syslogs compressratio 3.77x - With fix: # newsyslog -v | grep remote/messages /var/log/remote/messages <5J>: size (Kb): 3338 [500] --> trimming log.... Approved by: bapt (mentor) PR: docs/150877 Reported by: Joshua Isom <jrisom@gmail.com> MFC after: 2 weeks
This commit is contained in:
parent
51eecdc35a
commit
e3b7979645
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=261401
@ -2284,7 +2284,7 @@ sizefile(const char *file)
|
||||
|
||||
if (stat(file, &sb) < 0)
|
||||
return (-1);
|
||||
return (kbytes(dbtob(sb.st_blocks)));
|
||||
return (kbytes(sb.st_size));
|
||||
}
|
||||
|
||||
/*
|
||||
|
Loading…
Reference in New Issue
Block a user