rsync: gzip na fonte tolerante

rsync: gzip na fonte tolerante

Preciso transferir alguns arquivos de log a cada hora para um armazenamento de log que todos os usuários possam acessar, e uso o rsync para fazer isso, mas o problema surge quando o arquivo de log é girado e compactado automaticamente, o rsync detecta que há um novo arquivo e ele também o transferiu, isso significa que no servidor de destino eu tenho:

example.log.2014-01-17--00

e

example.log.2014-01-17--00.gz

que é o mesmo arquivo de log, mas compactado com gzip -9.

esta é minha linha rsync, ela está incluída em um script:

rsync -rvzt --include "*/" --include "$pattern" --exclude "*" $directory [email protected]:/home/user/directory/$subdir/$basefilename

ele é executado a cada hora por um crontab e transfere todos os arquivos que correspondem a $pattern e $directory incluídos em um arquivo que contém caminhos e padrões que desejo transferir.

Então minha pergunta é se existe uma opção de rsync que eu não vi, ou se existe alguma possibilidade de fazer isso e como.

Desde já, obrigado.

Responder1

Você já pensou em usar o encaminhamento de rsyslog [1]?

Além disso, em [2], parece que a adição --exclude '*.gz'deve resolver o seu problema. Por que você --exclude '*'? Minha leitura disso seria que todos os arquivos são excluídos da sincronização.

[1]http://www.rsyslog.com/storing-and-forwarding-remote-messages/

[2]http://www.thegeekstuff.com/2011/01/rsync-exclude-files-and-folders/

informação relacionada