Eu adicionei usuário logstash
em grupo adm
usando o comando $ usermod -a -G adm logstash
.
Um dos arquivos que o agente do logstash está tentando ler é o /var/log/nginx/foo-access.log
que possui as seguintes permissões:
-rw-r----- 1 www-data adm 0 Jul 25 07:52 /var/log/nginx/foo-access.log
Quando eu sudo su logstash
posso ler o arquivo, MAS, quando eu $ sudo service logstash_agent restart
(que o script init executa como logstash
usuário), ele preenche os logs do logstash com:
{:timestamp=>"2013-07-31T17:05:17.287000+0000", :message=>"failed to open /var/log/nginx/foo-access.log: Permission denied - /var/log/nginx/foo-access.log", :level=>:warn}
Posso confirmar que o usuário do logstash está no grupo adm:
$ groups logstash
logstash : logstash adm
Este arquivo definitivamente tem o acesso correto:
$ getfacl /var/log/nginx/foo-access.log
getfacl: Removing leading '/' from absolute path names
# file: var/log/nginx/foo-access.log
# owner: www-data
# group: adm
user::rw-
group::r--
other::---
Tentei desligá-lo e ligá-lo novamente.
ubuntu
permissions
ubuntu-12.10
logstash
Phil Sturgeon
fonte
fonte
/var/log/nginx
)Respostas:
Acabou por estar relacionado a esse bug no inicio:
https://bugs.launchpad.net/upstart/+bug/812870
Por
adm
ser um grupo secundário, ele não estava sendo aplicado ao processo, que é quebrado como f ** k e aparentemente é corrigido em uma versão posterior.Minha solução foi adicionar
setguid adm
ao arquivo init.fonte
Aqui está uma solução alternativa de trabalho:
modificar
por
então
fonte