ran*_*gfu 2 varnish varnish-vcl
我知道在 Varnish 中,您可以根据文档使用 vcl_hash 中的 hash_data() 将数据添加到缓存哈希。
出于调试目的,我希望能够看到构成哈希的任何内容的全部内容。
例如,如果我们可以这样做,那将非常有用:
# This won't work:
set req.http.X-DEBUG = "HASH-DATA:" + hash_data();
Run Code Online (Sandbox Code Playgroud)
有谁知道这是否可能?
您通常可以使用varnishlog命令查看它。
但是,从 varnish 5 开始,您需要在日志输出中专门启用散列。这可以通过该varnishadm实用程序完成:
执行varnishadm并在它启动的提示下键入:
varnish> param.set vsl_mask +Hash
Run Code Online (Sandbox Code Playgroud)
您可以通过键入退出 shell quit,然后varnishlog再次运行,它现在应该显示每个请求使用的哈希值。
varnishlog正确解释特定请求使用哪些哈希数据。
您可以将 varnishlog 输出重定向到您的自定义文件以供进一步查看:
varnishlog > my-log.log
Run Code Online (Sandbox Code Playgroud)