Equivalente ao LogRotate para Windows?


30

Temos um enorme arquivo de log sendo gravado pelo aplicativo de um fornecedor. Vamos supor que o fornecedor não faça o que pedimos. Existe alguma maneira de girar esse arquivo de log? Estamos analisando cerca de 300 MB por hora sendo gravados - prefiro dividir isso em pedaços de 10 MB e deixar que algo mais antigo que um dia ou mais de 1000 arquivos caia de um precipício.

(Eu sei, eu sei, possível duplicata de Como você gira os logs do apache no Windows sem interromper o serviço? )

Aha - o log do Chomp estava morto, mas a pesquisa por "chomp logrotate" me levou ao seu novo site . Vou tentar amanhã e responder se eu gostar. Eu ainda gostaria de ouvir sobre o software que mais alguém está usando que funciona para isso.


A reinicialização periódica do serviço causará problemas? O aplicativo pode enviar sua saída para um programa ou um soquete de rede?
Zoredache

Ele pode fazer logon no stdout ou em um arquivo nomeado. Possibilidade de reiniciar - possível, ainda não certo.
mfinni

Existem centenas de scripts para rotações de log. Por exemplo, pesquise no Google por "rotação do log do PowerShell".
Jim B

Aquele trata especificamente de arquivos antigos (antigos) que não estão mais sendo gravados, o que é um caso bastante fácil. Eu estava procurando algo para lidar com um único arquivo.
mfinni

Pesquisando esse fórum por "logrotate" há 0 resultados.
mfinni

Respostas:


8

Por mais que eu estremeça com a sugestão, a instalação do Cygwin é uma das poucas opções disponíveis. De lá, você pode usar logrotate.


2
Não tenho medo de Cygwin se ele incluir uma boa solução, embora eu esteja sempre consciente de não usar um canhão para golpear uma mosca.
mfinni

11
Desculpe, tenho que retirar minha marca de seleção. Não vejo logrotate no catálogo do Cygwin atual. Pode ser construído corretamente a partir da fonte, mas o MAKEFILE não inclui nada para CYG ou WIN.
mfinni

@finfin Infelizmente, ele não está no pacote, embora outros o tenham usado no Cygwin. = /
Wesley

Parece bom para mim
mfinni

2
Confirmo a capacidade de mover o arquivo de log das ações da Cygwin syslog-ng.
ivan_pozdeev

10

Ainda não o usei, mas o LogRotateWin é uma implementação nativa do logrotate para Windows que parece promissora. Pelo menos, não requer Cygwin.


3
Eu usei isso no Windows 2012 R2. Funciona perfeitamente. choco install logrotateem seguida, editar c: \ Program Files (x86 \ logrotate \ Content \ logrotate.conf
spuder

8

Dê uma olhada no logwot8 , que é um pacote de logrotate, um ambiente de shell limitado e componentes da camada cygwin necessários, prontos para funcionar imediatamente (tamanho do instalador de 4 MB). Você precisa personalizar o arquivo de configuração de acordo com seus requisitos. É gratuito para uso e distribuição sob licença BSD de 2 frases.

Disclaimer: Eu sou o desenvolvedor :-)


Alguma perspectiva para fontes? Digamos, recompilá-lo para o Cygwin instalado em vez de transportar um separado por aí?
ivan_pozdeev

Você pode baixar as fontes de rotação de log usadas no logwot8 aqui .
itefix 23/02
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.