[SP-pm] Como testar conexões remotas?

Otávio Fernandes otaviof at gmail.com
Fri Sep 17 01:59:17 PDT 2010


2010/9/17 "Flávio R. Lopes" <flavio.lopes em links.inf.br>:
> Olá pessoal.
>
> Fiz um programinha que sincroniza diretórios entre servidores. Como são
> vários servidores, gostaria de gerar tipo de um "log" que irá me mostrar
> quais as conexões (transferências) que deram certo e quais falharam.
> Por exemplo, gostaria de gerar um arquivo de log que me mostrasse mais ou
> menos o seguinte:
>
> Servidor server1 => Transferência Ok
> Servidor server2 => Transferência Ok
> Servidor server3 => Falhou
> (and so on...)
>
> O script é este: git://gist.github.com/583692.git
>
> Tentei jogar esta parte (abaixo) dentro de um "if", mas não funcionou:
> map {
>    $obj->exec( { src => $_ . ':/path/de/origem', dest => $servidor{$_} } )
>      or warn "A transferencia falhou!\n"
> } keys %servidor;
>
>
> Uma outra dúvida minha é a seguinte: Como eu usei a função "map" para tratar
> os elementos do meu Hash, quando eu disparo o script, ele automaticamente
> tenta fazer a conexão com TODOS os servidores listados dentro do Hash de uma
> única vez, ou seja, ele vai abrir tantas conexões quantas estiverem listadas
> no Hash. Constatei isto usando o "netstat -n"
>
> Daria para fazer um controle, tipo, só abrir uma conexão, quando uma outra
> for finalizada? Imaginei também testar a conexão, ou seja, pode ser que um
> determinado server não esteja "no ar"...
>
> Vocês podem me dar uma dica?
>
> Abraço,
> Flávio
>
> _______________________________________________
> SaoPaulo-pm mailing list
> SaoPaulo-pm em pm.org
> http://mail.pm.org/mailman/listinfo/saopaulo-pm

Flávio,

Não faz muito sentido ele abrir conexões antes de terminar a última, visto que
o "map" está fazendo uma chamada síncrona para o File::Rsync.

Você tem certeza de que isso está vindo do seu script?

um abraço,

-- 
Otávio Fernandes
otaviof at ( gmail.com, cpan.org )
http://github.com/otaviof


More information about the SaoPaulo-pm mailing list