Как удалить журнал varnishncsa, если req.url соответствует

У меня есть несколько балансировщиков нагрузки, которые все выполняют проверки работоспособности на нескольких экземплярах лака. Проверка работоспособности на стороне лака состоит из сопоставления метода запроса и URL-адреса для возврата ответа 200.

if (req.method == "GET" && req.url == "/ping") {
       return(synth(200, "OK"));
}

Используя HAProxy, я настроил проверки работоспособности для опроса / проверки связи на внутренних серверах. Это генерирует много сообщений в varnishncsa. Можно ли как-то отбросить записи журнала, идущие в varnishncsa, если они соответствуют определенному req.url?

2 ответа

В дополнение к ссылке, предоставленной Kirrus, здесь есть ссылка на язык запросов VSL: http://www.varnish-cache.org/docs/4.0/reference/vsl-query.html

На самом деле varnishncsa просто использует запрос к журналу varnishlog. Вы можете переопределить запрос, который он использует, с помощью '-q' - обновить параметр командной строки в выбранной вами системе pid0. Если initV, переопределите DAEMON_OPTS в / etc / default / varnishncsa.

Фактическая документация немного скудна, но здесь есть несколько примеров: https://info.varnish-software.com/blog/logging-varnish-40

Другие вопросы по тегам