varnish-4.x 之varnishlog,varnishstat,varnishtop,varnishhist
varnishlog
man varnishlog
man vsl
man vsl-query
数据流groups
-g session | request | vxid | raw
• Transaction groups are hierarchical
• Levels are equal to relationships (parents and children):
Level 1: Client request (cache miss)
Level 2: Backend request
Level 2: ESI subrequest (cache miss)
Level 3: Backend request
Level 3: Backend request (VCL restart)
Level 3: ESI subrequest (cache miss)
Level 4: Backend request
Level 2: ESI subrequest (cache hit)
varnishlog支持丰富的查询语句
• string matching, e.g.: RespProtocol eq "HTTP/1.1"
• regex, e.g.: ReqMethod ~ "GET|POST"
• integer and float matching, e.g.: RespStatus == 200
• boolean operators, e.g.: RespStatus >= 500 and RespStatus < 600
• parenthesis hierarchy
• negation using not
示例:
varnishlog -g request -i Begin,Link -d
varnishlog -q 'RespStatus < 500'
varnishlog -g request -q 'ReqURL eq "/"'
varnishlog -g request -q 'Backend ~ default'
varnishlog -g request -i ReqHeader,RespHeader
varnishstat
varnishstat -f MAIN.client_req -f MAIN.cache_hit
Column Description
Name The name of the counter
Current The current value of the counter.
Change The average per second change over the last update interval.
Average The average value of this counter over the runtime of the Varnish daemon, or a
period if the counter can't be averaged.
Avg_10 The moving average over the last 10 update intervals.
Avg_100 The moving average over the last 100 update intervals.
Avg_1000 The moving average over the last 1000 update intervals.
varnishhist