1. 次の行を /etc/rc.local に追加します。
    varnishncsa -a -w /var/log/varnish/access.log -D -P /var/run/varnishncsa.pid
  2. logrotate を設定するために、次の行を次に追加します。
    /etc/logrotate.d/varnish
    (存在しない場合は次のように作成します)
    /var/log/varnish/*log { create 640 http log compress postrotate /bin/kill -USR1 `cat /var/run/varnishncsa.pid 2>/dev/null` 2> /dev/null || true endscript }
  3. 上で定義したパスに対するコレクタにローカル ファイル ソースを追加します。

サンプル ログ

101.92.120.16 - - [2017-07-13 21:10:59.586 +0000] "GET /_includes/wp/blog/wp-content/plugins/us/31063765-bpfull.phpi?&w=50&id=6&random=1331063765 HTTP/1.1" 304 5201 "http://search.yahoo.com/mobile/s?rew...0logs&pintl=en" "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:23.0) Gecko/20131011 Firefox/23.0"

フィールド抽出ルール

parse regex "^(?<src_ip>\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})" 
| parse regex "(?<method>[A-Z]+)\s(?<url>\S+)\sHTTP/[\d\.]+\"\s(?<status_code>\d+)\s(?<size>[\d-]+)\s\"(?<referrer>.*?)\"\s\"(?<user_agent>.+?)\".*"

結果フィールド:

フィールド 説明
src_ip リクエストを生成したクライアント (リモート ホスト) の IP アドレス 101.92.120.16
method クライアントが使用したメソッド GET
url クライアントがリクエストしたリソース /_includes/wp/blog/wp-content/plugins/us/31063765-bpfull.phpi?&w=50&id=6&random=1331063765
status_code サーバがクライアントに送り返したステータス コード 304
size クライアントに返されたオブジェクトのサイズ 5201
referrer クライアント レポートが参照された元のサイト http://search.yahoo.com/mobile/s?rew...0logs&pintl=en
user_agent クライアント ブラウザが自身についてレポートした身元情報 Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:23.0) Gecko/20131011 Firefox/23.0