Como limitar o tamanho do arquivo de log de acesso ao nginx e compactá-lo?

18

Espero obter alguma orientação sobre como configurar truncamentos e gzip'ing nos logs de acesso dos meus domínios. Percebo que os principais logs de acesso ao nginx são divididos e compactados por padrão, mas meus logs de acesso individuais continuam a crescer.

Isso é algo que pode ser configurado e tratado pelo nginx ou outra coisa no meu sistema que esteja gerenciando seus logs principais?

Cachorro
fonte
Usar logrotate?
Michael Hampton

Respostas:

25

/etc/logrotate.d/nginx

/var/log/nginx/access_log {
    rotate 7
    size 5k
    dateext
    dateformat -%Y-%m-%d
    missingok
    compress
    sharedscripts
    postrotate
        test -r /var/run/nginx.pid && kill -USR1 `cat /var/run/nginx.pid`
    endscript
}
quanta
fonte
11
Impressionante. Logrotate era novo para mim. Faz todo o sentido agora. Obrigado!
Dog
man logrotatepara detalhes adicionais.
Seth
11
Eu tive que fazer o seguinte para começar com a nova configuração:sudo logrotate -v -f /etc/logrotate.d/nginx
talsibony
O comando que realmente gira os logs é "kill -USR1 /var/run/nginx.pid". Isso não interrompe o processo Nginx, mas envia um sinal para que ele recarregue seus arquivos de log. Isso fará com que novas solicitações sejam registradas no arquivo de log atualizado. Fonte
Edson Horacio Junior
Alguém poderia explicar o que é isso e o que isso está fazendo?
Esqarrouth 03/04