如何在Linux Alpine上设置Varnish日志记录?

时间:2018-03-21 02:38:02

标签: varnish alpine

我知道Varnish日志记录默认情况下未启用,并且已通过varnishncsa启用,有许多文章在线有关如何设置但不适用于Linux Alpine。我看到configurations for it here。但不确定默认情况下是否运行任何日志记录服务。

非常感谢任何帮助。非常感谢

1 个答案:

答案 0 :(得分:1)

要启用信息性日志,您需要启动以下命令:

/usr/bin/varnishncsa -q 'ReqURL ne "<url_which_should_be_not_logged>"' -F '%{Host}i %h %l %u %t \"%r\" %s %b \"%{Referer}i\" \"%{User-agent}i\" \"%{Varnish:hitmiss}x\"' -w /path/to/log_file
varnishd启动后

/usr/sbin/varnishd -s malloc,128M -a :80 -f /etc/varnish/default.vcl

如果我们在谈论Docker容器中的Alpine,只需创建以下entrypoint.sh脚本:

#!/bin/bash

mkdir -p /var/lib/varnish/`hostname` && chown nobody /var/lib/varnish/`hostname`
/usr/sbin/varnishd -s malloc,128M -a :80 -f /etc/varnish/default.vcl

/usr/bin/varnishncsa -q 'ReqURL ne "<url_which_should_be_not_logged>"' -F '%{Host}i %h %l %u %t \"%r\" %s %b \"%{Referer}i\" \"%{User-agent}i\" \"%{Varnish:hitmiss}x\"'

并将其放在Dockerfile

的末尾
ENTRYPOINT ["/entrypoint.sh"]