Mongodb: Arquivo de log permanece vazio

0

Ontem eu movi 2 arquivos de / var / log / mongodb para outro diretório. Os nomes dos arquivos: "mongod.log", "mongod.log.1" (os dois únicos arquivos nesse diretório com tamanho grande). O mongodb estava rodando neste momento, eu esperava que o mongodb criasse um novo mongod.log, mas ele não o fez. Então eu criei manualmente um mongod.log e fiz "chown mongodb: mongodb mongod.log", mas o arquivo ainda está vazio.

Eu não consigo parar o mongodb, como posso forçar o mongodb a logar novamente neste arquivo? O mongod.conf está bem.

    
por JeromeC 12.07.2016 / 11:04

2 respostas

1

Esse arquivo original ainda está sendo mantido aberto por mongod apesar do fato de que você o moveu, e continuará sendo o arquivo para o qual ele registra até você parar o processo mongod ou tentar o seguinte:

  1. Remova o novo arquivo mongod.log criado em /var/log/mongodb
  2. Mova o antigo arquivo mongod.log de volta para /var/log/mongodb
  3. Emita o logRotate command do mongo shell (quando conectado ao relevante mongod )

Nota: Como alternativa, para o passo 3, pode enviar um kill -SIGUSR1 <pid of mongod> para obter o mesmo resultado.

Uma vez feito isso, você terá agora um novo arquivo mongod.log menor na pasta, junto com o arquivo anterior truncado (não sendo mais gravado). O nome exato depende da versão que você está digitando que você não mencionou, mas agora você está livre para mover os arquivos de log grandes para outro diretório (eu recomendo compactá-los, eles são facilmente compactados).

Se o tamanho for um problema comum, eu recomendaria fazer isso como uma tarefa do cron ou semelhante para automatizar o processo daqui para frente.

    
por 13.09.2016 / 01:46
0

Basta emitir o comando abaixo em tempo de execução & você pode ver os logs sendo gravados em um arquivo de log especificado:

db.adminCommand( { logRotate : 1 } )

Espero que isso ajude !!!

    
por 18.06.2018 / 09:01

Tags