Я хочу регистрировать все запросы к статическим страницам в определенном каталоге через varnishlog
.
Вот что я пробовал:
varnishlog -c -q "ReqURL ~ '.*version15.*'"
Работает, но я хочу еще ограничить его.
varnishlog -c -q "ReqURL ~ '.*static.*version15.*'"
Не работает.
varnishlog -c -q "ReqURL ~ '/static/version15/tpl/my_template.html"
Не работает.
я проверил Фильтрация varnishlog v4, https://varnish-cache.org/docs/trunk/reference/vsl-query.html - но не смог разобраться.
Причина почему varnishlog -c -q "ReqURL ~ '/static/version15/tpl/my_template.html"
не работает, потому что вы забыли одинарная кавычка в конце, закрывающая вашу строку.
Я получаю вот такую ошибку:
Query expression error:
Unterminated string (Pos 49)
ReqURL ~ '/static/version15/tpl/my_template.html
Это команда, которая должна работать на вас:
varnishlog -c -q "ReqURL ~ '/static/version15/tpl/my_template.html'"
Я смоделировал звонок на тестовой установке, и он работает нормально.
Команда, которую вы пытаетесь запустить, соответствует явному URL-адресу, но на самом деле ваш вопрос касался сопоставления статических файлов в каталоге. Предлагаю использовать что-то вроде этого:
varnishlog -g request -q "ReqUrl ~ '/static/version15/tpl/.*\.html'"