Como diminuir o uso do disco de metadados dos logs do journald?

2
myuser@myhost:~$ sudo journalctl > log.txt
myuser@myhost:~$ sudo journalctl --disk-usage
Archived and active journals take up 3.0G on disk.
myuser@myhost:~$ ls -lh log.txt 
-rw-rw-r-- 1 myuser myuser 298M Oct 31 15:15 log.txt

Portanto, meu diário está usando 3G de espaço em disco, mas as entradas de log reais são de apenas ~ 300M. Eu imagino que os metadados do periódico estão tomando o resto.

É possível alterar a proporção de metadados para entradas de registro? Ou talvez não sejam metadados, mas alguma outra coisa?

Quase todos esses registros são gerados por aplicativos em contêiner, dockerd --log-driver=journald

Atualizar :

Meu journald.conf :

[Journal]
Storage=persistent
RateLimitInterval=0
RateLimitBurst=0
ForwardToSyslog=no
    
por suside 02.11.2016 / 09:41

1 resposta

0

Primeiro, o que você vê como "no disco" pode não estar no disco. Como esclarecido em uma recente correção de bug , o novo idioma diz "no sistema de arquivos", que pode estar em um sistema de arquivos na memória ou backup em disco. Por padrão no Ubuntu 16.04, ele é baseado em memória, mas há um relatório de erros para tornar o diário do systemd persistente por padrão no Ubuntu .

Agora, como reduzir o espaço. Se você não tiver certeza de onde começar a encontrar a documentação no journald, man -k journald é útil para ver se você já tem documentação relacionada instalada:

$ man -k journald
journald.conf (5)    - Journal service configuration files
journald.conf.d (5)  - Journal service configuration files
systemd-journald (8) - Journal service
systemd-journald-audit.socket (8) - Journal service
systemd-journald-dev-log.socket (8) - Journal service
systemd-journald.service (8) - Journal service
systemd-journald.socket (8) - Journal service

Como parece que você está procurando ajustar a configuração, man journald.conf é um bom local para verificar. Lá você encontrará documentos para várias opções relacionadas ao espaço em disco, que você pode ler os detalhes sobre isso. Aqui está um resumo:

  • Compress= , ativado por padrão, compacta os dados
  • SystemMaxUse= e RuntimeMaxUse= controlam quanto espaço em disco o diário pode usar no máximo.
  • MaxRetentionSec= O tempo máximo para armazenar entradas de diário.

Consulte a página do manual mencionada para os documentos completos e edite /etc/systemd/journald.conf .

Por fim, systemctl daemon-reload && systemctl reload systemd-journald para que suas alterações entrem em vigor.

    
por Mark Stosberg 02.11.2016 / 13:57