如何在 Linux Alpine 上设置 Varnish 日志记录?
How to setup Varnish logging on Linux Alpine?
我知道默认情况下未启用 Varnish 日志记录,它是通过 varnishncsa
启用的,网上有很多关于如何设置它的文章,但 Linux Alpine 没有。我看到 configurations for it here。但不确定默认情况下是否运行任何日志记录服务。
如有任何帮助,我们将不胜感激。非常感谢
要启用信息日志,您需要启动以下命令:
/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"]
我知道默认情况下未启用 Varnish 日志记录,它是通过 varnishncsa
启用的,网上有很多关于如何设置它的文章,但 Linux Alpine 没有。我看到 configurations for it here。但不确定默认情况下是否运行任何日志记录服务。
如有任何帮助,我们将不胜感激。非常感谢
要启用信息日志,您需要启动以下命令:
/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"]