Не могу написать в varnishlog или syslog от лака

Я пытаюсь отладить мои файлы.vcl. Я хочу использовать vmod_std и std.log или std.syslog для создания выходных данных и отслеживания пути моих запросов. std.syslog не пишет в var/log/syslog. Я посмотрел на 50-default.conf для rsyslog.d и попытался перезапустить службу. std.log приводит к сбою компиляции лака с таким сообщением, как

*** Killing all processes...
*** Running /etc/my_init.d/00_regen_ssh_host_keys.sh...
*** Running /etc/my_init.d/99-varnish.sh...
Message from VCC-compiler:
Expected an action, 'if', '{' or '}'
('routines.vcl' Line 84 Pos 3)
  std.log("********* FIND THIS IN THE LOG **************");
--#######--------------------------------------------------

Running VCC-compiler failed, exit 1

VCL compilation failed
*** /etc/my_init.d/99-varnish.sh failed with status 2

Подпрограмма, содержащая эту запись, просто

sub cache_this {
  std.log("log text");
  return(lookup);
}

Все это крайне затрудняет отладку. Я использую Лак 3.0

1 ответ

std.log должен скомпилироваться. Импортировали ли вы std в начале вашего vcl-файла?

import std;

sub cache_this {
  std.log("log text");
  return(lookup);
}

Если эта компиляция, вы сможете увидеть свой журнал (среди других) с varnishlog...

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