Назад | Перейти на главную страницу

Странное поведение с varnishlog и перенаправлением потока

Я написал помощника для отладки установки Varnish и использовал его как на рабочем сервере, так и на сервере разработки. Странно то, что я столкнулся с другим поведением, хотя настройки почти идентичны (за исключением оборудования).

Команда такая:

varnishlog > /var/log/v1.log & curl -I $URL; kill $!

На нашем производственном сервере все работает как положено: varnishlog запускается как фоновый процесс и перенаправляет его вывод на /var/log/v1.log - затем curl выполняет и когда это будет сделано varnishlog убит (хотя я не вижу сообщения «завершено», пока не будет выполнена следующая команда).

На нашем сервере разработки команда выполняется, и сразу после нее появляется сообщение «завершено». crulвывод. Тем не мение, /var/log/v1.log пусто.

Оба сервера uname -srvmo возвращается Linux 2.6.32-358.18.1.el6.x86_64 #1 SMP Wed Aug 28 17:19:38 UTC 2013 x86_64 GNU/Linux и оба бегут CentOS release 6.4 (Final).

РЕДАКТИРОВАТЬ: Кажется, что varnishlog > /var/log/v1.log не работает. Также не делает varnishlog > /var/log/v1.log 2>&1 или varnishlog | tee /var/log/v1.log (последний также не выводит продукт на консоль). Другие команды (например, echo 'test' > /var/log/v1.log) работают как положено. Вариант лака абсолютно одинаковый на обеих машинах (varnish-3.0.5 revision 1a89b1f).