Erro AWStats: comando para pipe falhou

Erro AWStats: comando para pipe falhou

Estou recebendo este erro do cron job do AWStats 7.2 (no Ubuntu 14.04, usando o pacote stock awstats) ao ler um log do icecast por meio de um pipe para filtrar um vhost:

Error while processing /etc/awstats/awstats.mysite.conf
Create/Update database for config "/etc/awstats/awstats.mysite.conf" by AWStats version 7.2 (build 1.992)
From data in log file "grep '\/mysite' < /var/log/icecast2/access.log |"...
Phase 1 : First bypass old records, searching new record...
Searching new records from beginning of log file...
Error: Command for pipe 'grep '\/mysite' < /var/log/icecast2/access.log |' failed
Setup ('/etc/awstats/awstats.mysite.conf' file, web server or permissions) may be wrong.
Check config file, permissions and AWStats documentation (in 'docs' directory).

À primeira vista, isso parece um simples problema de permissão, mas os arquivos de configuração e de log podem ser lidos pelo www-datausuário sob o qual ele é executado. Se eu entrar nessa conta de usuário, poderei ler os dois arquivos sem problemas.

#sudo -u www-data ls -al /etc/awstats/awstats.mysite.conf /var/log/icecast2/access.log
-rw-r--r-- 1 www-data www-data 444 May 13 11:23 /etc/awstats/awstats.mysite.conf
-rw-r--r-- 1 icecast2 icecast    0 Jun  8 05:29 /var/log/icecast2/access.log

Se eu executar o comando grep com o mesmo usuário, isso também funcionará bem.

Para evitar problemas espúrios, desativei todos os plug-ins - de qualquer maneira, só estou usando geoip, então a configuração é bastante simples. Se eu executar o comando awstats manualmente com --debug=6saída completa, parece que não há problemas para ler o arquivo - o erro é gerado quando o arquivo é fechado. Acontece que este arquivo de log está vazio no momento, então não há nada para analisar, mas certamente isso não deve gerar um erro de permissão?

Sat Jun 13 20:33:21 2015 - DEBUG 1 - Start Update process (lastprocesseddate=201505)
Sat Jun 13 20:33:21 2015 - DEBUG 1 - Open log file "grep '\/mysite' < /var/log/icecast2/access.log |"
Phase 1 : First bypass old records, searching new record...
Searching new records from beginning of log file...
Sat Jun 13 20:33:21 2015 - DEBUG 1 -  _host_p:0 _host_h:0 _host_k:0 _host_l:0 _host_s:0 _host_u:0

Sat Jun 13 20:33:21 2015 - DEBUG 1 -  _url_p:0 _url_k:0 _url_e:0 _url_x:0

Sat Jun 13 20:33:21 2015 - DEBUG 1 -  _waithost_e:0 _waithost_l:0 _waithost_s:0 _waithost_u:0

Sat Jun 13 20:33:21 2015 - DEBUG 1 - End of processing log file (AWStats memory cache is TmpDNSLookup=0 TmpBrowser=0 TmpOS=0 T
mpRefererServer=0 TmpRobot=0)
....(lots of stuff that seems related to successful processing and output deleted)
Sat Jun 13 20:33:21 2015 - DEBUG 1 -  Update offset of section sider_404=10022 in file at offset 1381
Sat Jun 13 20:33:21 2015 - DEBUG 1 -  Update MonthVisits=290 in file at offset 2140
Sat Jun 13 20:33:21 2015 - DEBUG 1 -  Update MonthUnique=168 in file at offset 2173
Sat Jun 13 20:33:21 2015 - DEBUG 1 -  Update MonthHostsKnown=0 in file at offset 2210
Sat Jun 13 20:33:21 2015 - DEBUG 1 -  Update MonthHostsUnknown=182 in file at offset 2249
Sat Jun 13 20:33:21 2015 - DEBUG 1 - Call to Init_HashArray
Sat Jun 13 20:33:21 2015 - DEBUG 1 - Close log file "grep '\/mysite' < /var/log/icecast2/access.log |"
Sat Jun 13 20:33:21 2015 - DEBUG 1 - Command for pipe 'grep '\/mysite' < /var/log/icecast2/access.log |' failed

O que eu perdi?

informação relacionada