Definição
logRotateThe
logRotatecommand is an administrative command that allows you to rotate the MongoDB server log and/or audit log to prevent a single logfile from consuming too much disk space.Você deve enviar o comando
logRotateno banco de dados admin.
Compatibilidade
Esse comando está disponível em implantações hospedadas nos seguintes ambientes:
MongoDB Enterprise: a versão autogerenciada e baseada em assinatura do MongoDB
MongoDB Community: uma versão com código disponível, de uso gratuito e autogerenciada do MongoDB
Importante
Este comando não é aceito em clusters do MongoDB Atlas. Para obter informações sobre o suporte do Atlas a todos os comandos, consulte Comandos não suportados.
Sintaxe
O comando tem a seguinte sintaxe:
db.adminCommand( { logRotate: <integer or string>, comment: <string> } )
Campos de comando
O comando utiliza os seguintes campos:
Campo | Tipo | Descrição |
|---|---|---|
| inteiro ou string | A tora ou toras a serem rotacionadas, de acordo com o seguinte:
|
| string | Opcional. Uma mensagem registrada pelo servidor no arquivo de registro e no arquivo de auditoria no momento da rotação do registro. |
Você também pode girar os registros enviando um sinal do SIGUSR1 para o processo do mongod.
Por exemplo, se uma instância mongod em execução tiver um ID de processo (PID) de 2200, o comando a seguir rotacionará o arquivo de log dessa instância no Linux:
kill -SIGUSR1 2200
Limitações
Your
mongodinstance needs to be running with the--logpath [file]option in order to uselogRotateAuditoria deve ser habilitada para girar o registro de auditoria.
Comportamento
The systemLog.logRotate setting or --logRotate option specify logRotate's behavior.
When systemLog.logRotate or --logRotate are set to rename, logRotate renames the existing log file by appending the current timestamp to the filename. The appended timestamp has the following form:
<YYYY>-<mm>-<DD>T<HH>-<MM>-<SS>
Then logRotate creates a new log file with the same name as originally specified by the systemLog.path setting to mongod or mongos.
When systemLog.logRotate or --logRotate are set to reopen, logRotate follows the typical Linux/Unix behavior, and simply closes the log file then reopens a log file with the same name. With reopen, mongod expects that another process renames the file prior to the rotation, and that the reopen results in the creation of a new file.
Exemplos
O exemplo a seguir alterna o log do servidor e o log de auditoria:
db.adminCommand( { logRotate: 1 } )
O exemplo a seguir alterna apenas o log de auditoria e fornece uma mensagem personalizada para o arquivo de log no momento da rotação:
db.adminCommand( { logRotate: "audit", comment: "Rotating audit log" } )