仅使用 varnishncsa 记录命中情况

仅使用 varnishncsa 记录命中情况

默认情况下,varnishncsa 会记录命中和未命中。由于我已经在后端服务器日志中记录未命中,因此我希望在 varnishncsa 中仅记录命中,以消除重复并降低日志文件大小。有人成功做到了吗?

我在 Ubuntu 12.04 Server x64 上运行 Varnish 3.0.2。

答案1

在我的 varnish 实例中,我包含一个“X-Cache”标头,它会根据需要显示 HIT 或 MISS。有了它,您只需在“TxHeader”中查找它即可:

varnishncsa -c -m "TxHeader:X-Cache: HIT"

要添加此标题,您可以在 .vcl 文件中添加类似这样的内容:

sub vcl_deliver {
      if (obj.hits > 0) {
        set resp.http.X-Cache = "HIT";
      } else {
        set resp.http.X-Cache = "MISS";
      }
}

相关内容