Подтвердить что ты не робот

Как настроить каротаж?

Я хочу, чтобы Лак регистрировал запросы. Я нашел команду varnishlog -a -w /var/log/varnish.log, но ничего не записывал.

Затем я обнаружил, что Varnish не записывается в журнал по умолчанию. Однако я не могу найти параметры конфигурации для ведения журнала.

4b9b3361

Ответ 1

Если вы хотите регистрировать HTTP-запросы в общем формате журнала NCSA, вам нужно использовать varnishncsa. В CentOS/RedHat пакет RPM Varnish включает в себя инициализацию script varnishncsa, которую вы можете использовать для начала ведения журнала. По умолчанию он записывается в logfile="/var/log/varnish/varnishncsa.log".

Кроме того, если вы хотите обслуживать несколько разных хостов через одну установку Varnish, вы также захотите включить имя хоста в журнал. Это можно сделать с помощью следующей настройки в /etc/sysconfig/varnishncsa

DAEMON_OPTS="$DAEMON_OPTS -F '%{Host}i %h %l %u %t \"%r\" %s %b \"%{Referer}i\" \"%{User-agent}i\"'"

Обратите внимание, что метод, описанный в ссылке Anshu, регистрирует только запросы, переданные Varnish на серверные серверы. Запросы на получение кеша никогда не будут записаны (до Varnish 5.0 - см. Ниже). Поэтому собранные таким образом протоколы HTTPD не могут использоваться для статистического анализа.

Обновление: Как упоминает @VikrantPogula, с Varnish 5.0 все клиентские запросы регистрируются, включая хиты кэша. Это поведение по умолчанию и может быть включено в явном виде с помощью переключателя -c.

Ответ 2

Метрики в лаке - общая область, с которой люди борются.

Относительно легко получить некоторые параметры запроса, но общее отслеживание с течением времени обычно связано с использованием varnishncsa. Вот руководство по установке Varnish, которое включает настройку метрики

Ответ 3

В ответ на ответ Ketola у вас может быть lognnska log даже запросы на получение кэша, передав флаг -c. Это позволит вам использовать журналы HTTPD для анализа статистики.

Пример: varnishncsa -c -a -w ~/varnish.log будет записывать запросы на удаление кеша в файл в формате NCSA по умолчанию

Ответ 4

Так как я приземлился здесь, и предложенное исправление не помогло:

Мой файл varnishncsa.log был пуст и процесс выполнялся.

Оказалось, что я должен указать формат журнала (любой формат).

Поскольку это понимание само по себе не исправило мой init script, я исправил его, используя эту стратегию.