我最近接手了一台服务器,发现varnish.log
里面有一个文件/var/log/varnish
,目前文件大小已经超过 300G。在我看来,这就像是我运行时获得的数据的反馈varnishlog
。
/etc/varnish/default.vcl
我似乎找不到 varnish 首先要记录的位置。我的文件中没有引用。
在/etc/default/varnish
我的varnishlog
文件中,所有内容都被注释掉了,具体来说:
# Uncomment this to enable logging for varnish. Please make sure you have
# enough disk space for significant amounts of log data. To disable logging,
# set the variable to "0", "no", or leave it unset.
默认设置似乎未启用日志记录,所以我想知道在哪里可以打开它?
如果不是,则正在主动写入。运行tail -f on varnish.log
显示输入流。
任何指导都值得赞赏。
答案1
尝试修改你的 logrotate 脚本
/var/log/varnish/*.log {
daily
rotate 7
missingok
size 50M
compress
delaycompress
missingok
postrotate
if [ -d /run/systemd/system ]; then
systemctl -q is-active varnishlog.service || exit 0
fi
/usr/sbin/invoke-rc.d varnishlog reload > /dev/null
endscript
}
我将 /var/log/varnish/varnish.log 更改为 *.log,以便它能够处理 varnish.log 和 varnishnsca.log。我添加了大小 50M,以便在日志达到 50M 时轮换日志。此时,我会尝试使用 logrotate 强制更改。首先尝试使用 -d 标志,看看输出是否有变化。如果它确实表示它可以在调试模式下轮换,请尝试logrotate -f /etc/logrotate.d/varnish