Systemd journal files menores que SystemMaxFileSize

2

Eu tenho um sistema rodando o CentOS 7, com mais de 1T de espaço livre em disco. A versão do systemd é 219. Configurei o journald com as seguintes configurações:

Storage=persistent
SplitMode=none
SystemMaxUse=50G
SystemMaxFileSize=1G
#MaxFileSec=1month (default)

No entanto, os arquivos de diário resultantes são menores que 1G, eles são cortados em cerca de 500M, como pode ser visto nesta captura de tela.

Eu estou fazendo testes intensos do sistema, o log é preenchido com mais de 1G por dia, então não é o MaxFileSec que está entrando. Eu notei que o id do grupo é diferente para os arquivos, talvez seja um pista. No entanto, como visto pelos carimbos de hora na captura de tela, os dois arquivos de log no topo não parecem mais preenchidos.

Minha pergunta é: por que o tamanho dos arquivos de diário não está atingindo o 1G configurado?

Edit: Os nomes dos parâmetros corrigidos, como apontado por Mark abaixo, estavam corretos no sistema.

    
por joaerl 23.01.2017 / 14:11

1 resposta

4

Nada nos documentos em man journald.conf promete tornar os arquivos de log tão grandes quanto SystemMaxFileSize= . Os documentos prometem apenas não exceder esse limite.

De uma leitura amadora do código-fonte C , meu A interpretação é que existe um "tamanho mínimo de arquivo", mas isso é apenas 512k, então isso não deveria estar em jogo aqui. Há também "FILE_SIZE_INCREASE", que está relacionado à alocação do crescimento incremental de arquivos. Minha leitura é esperar que o tamanho do arquivo cresça dentro de 8 MB do SystemMaxFileSize antes que a rotação aconteça.

Se você pesquisar toda a árvore% source systemd para SystemMaxFileSize , verá que ela é convertida na variável "max_size" no arquivo ".c" vinculado acima.

Como os documentos não responderam totalmente à pergunta, a leitura do código-fonte relacionado pode fornecer uma visão mais completa do comportamento que você estava procurando.

    
por 23.01.2017 / 15:11