Spec-Zone.ru › Varnish

Ведение журнала в Varnish

Одна из действительно замечательных функций Varnish — это система ведения журнала. Вместо записи в обычный файл журнала Varnish записывает в сегмент общей памяти, называемый VSL — Varnish Shared Log. Когда сегмент заполняется, мы начинаем с начала, перезаписывая старые данные.

Это намного быстрее, чем запись в файл, и не требует места на диске. Кроме того, это предоставляет вам гораздо больше информации, когда вам это нужно.

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

varnishlog — это одна из программ, которые можно использовать для просмотра того, что регистрирует Varnish. varnishlog предоставляет вам исходные журналы, всё, что записывается в журналы. Есть и другие клиенты, которые могут получить доступ к журналам, мы покажем их позже.

В окне терминала, в котором вы запустили Varnish, теперь наберите varnishlog -g raw и нажмите Enter.

Вы увидите медленно прокручивающиеся строки такого вида:

0 CLI            - Rd ping
0 CLI            - Wr 200 19 PONG 1273698726 1.0

Это главный процесс Varnish проверяет процесс кэширования, чтобы убедиться, что всё в порядке.

Теперь перейдите в браузер и перезагрузите страницу, отображающую ваше веб-приложение.

Вы увидите строки следующего вида:

11 SessOpen       c 127.0.0.1 58912 :8080 0.0.0.0 8080 1273698726.933590 14
11 ReqStart       c 127.0.0.1 58912
11 ReqMethod      c GET
11 ReqURL         c /
11 ReqProtocol    c HTTP/1.1
11 ReqHeader      c Host: localhost:8080
11 ReqHeader      c Connection: keep-alive

Первый столбец — произвольное число, оно идентифицирует транзакцию. Строки с одинаковым числом поступают из одной и той же транзакции. Второй столбец — метка сообщения журнала. Все записи в журнале помечены меткой, указывающей вид выполняемой операции.

Третий столбец показывает, поступают ли данные от клиента или к нему («c») или от/к бэкенду («b»). Четвёртый столбец — это регистрируемые данные.

Теперь вы можете фильтровать данные с помощью varnishlog. Основные параметры, которые вам, вероятно, понадобятся:

‘-b’

Показывать только строки журнала из трафика между Varnish и серверами бэкенда. Это будет полезно при оптимизации показателя попадания в кэш.

‘-c’

То же, что и ‘-b’, но для трафика со стороны клиента.

‘-g request’

Группировать транзакции по запросу.

‘-q query’

Выводить только транзакции, соответствующие этому запросу.

Дополнительную информацию по этой теме вы можете найти в varnishlog.

Copyright © 2006 Verdens Gang AS
Copyright © 2006–2020 Varnish Software AS
Licensed under the BSD-2-Clause License.
https://varnish-cache.org/docs/7.4/users-guide/operation-logging.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API