prueba de configuración de barniz

prueba de configuración de barniz

¿Existe alguna forma de comprobar la sintaxis de configuración de Barniz sin utilizar la nueva versión?

Estoy buscando un barniz nativo equivalente aapache2ctl configtest

Respuesta1

Puede pedirle a Varnish que compile su archivo VLC en un archivo temporal. Esto es parte de nuestro script que carga una nueva configuración en nuestros servidores de barniz:

tmpfile=$(mktemp)
trap 'rm -f $tmpfile' 0
varnishd -C -f /srv/web/fe/varnish/default.vcl > $tmpfile
echo

if [ ! -s $tmpfile ]; then
    echo "ERROR: There are errors in the varnish configuration." >&2
    exit 1
fi

Esto funciona porque varnishd -Cno generará ningún resultado stdoutsi hay errores en el VCL.

Respuesta2

¿De qué se trata varnish_reload_vcl?

Algunos ejemplos:

  1. Sin problemas en tu archivo VCL

    $ varnish_reload_vcl
    Loading vcl from /etc/varnish/default.vcl
    Current running config name is reload_2016-01-28T15:18:23
    Using new config name reload_2016-01-28T15:19:57
    VCL compiled.
    VCL 'reload_2016-01-28T15:19:57' now active
    available       0 boot
    available       0 reload_2016-01-28T14:40:04
    available       0 reload_2016-01-28T14:42:07
    available       0 reload_2016-01-28T14:42:32
    available       0 reload_2016-01-28T14:47:45
    available       0 reload_2016-01-28T14:48:45
    available       0 reload_2016-01-28T14:50:26
    available       0 reload_2016-01-28T14:55:55
    available       0 reload_2016-01-28T15:18:23
    active          0 reload_2016-01-28T15:19:57
    
    Done
    
  2. Con un error en su archivo VCL

    $ varnish_reload_vcl
    Loading vcl from /etc/varnish/default.vcl
    Current running config name is reload_2016-01-28T15:19:57
    Using new config name reload_2016-01-28T15:21:51
    Message from VCC-compiler:
    Symbol not found: 'b1' (expected type BACKEND):
    ('input' Line 77 Pos 32)
            set req.backend_hint = b1;
    -------------------------------##-
    
    Running VCC-compiler failed, exited with 2
    VCL compilation failed
    Command failed with error code 106
    varnishadm -S /etc/varnish/secret -T 127.0.0.1:6082 vcl.load failed
    

información relacionada