[SP-pm] FILEHANDLE LOGFILE or INFILE

Leonardo Ruoso leonardo at ruoso.com
Thu Feb 5 13:16:10 PST 2015


Em 5 de fevereiro de 2015 19:03, Daniel de Oliveira Mantovani <
daniel.oliveira.mantovani em gmail.com> escreveu:

> O de graça depois que você sabe o que está fazendo é plausível, do outro
> lado te faz uma ameba.
>

http://poe.perl.org/?POE_Cookbook/Tail_Following_Web_Server


>
> 2015-02-05 18:57 GMT-02:00 Leonardo Ruoso <leonardo em ruoso.com>:
>
> Em 4 de fevereiro de 2015 15:51, Daniel de Oliveira Mantovani <
>> daniel.oliveira.mantovani em gmail.com> escreveu:
>>
>>> BTW, você está lendo o arquivo de log do WebSphere Application Server,
>>> SystemOut.log mesmo que você consiga implementar o "tail" que você está
>>> tentando implementar, você vai ter problemas pois o WebSphere Application
>>> Server "rotate" o arquivo, sendo assim o seu programa vai perder o ID do
>>> descritor de arquivos e vai parar de funcionar. Para resolver o problema,
>>> além de você implementar o seu "tail", você precisa ficar verificando se o
>>> ID do SystemOut.log mudou. É fácil de implementar e você vai aprender
>>> vários conceitos de Unix-like do caminho, estamos aqui para ajudar.
>>>
>>
>> Hmmm, o POE::Wheel::FollowTail e muitos outros módulos fazem isso de
>> graça :D
>>
>>
>>
>>>
>>> 2015-02-04 15:45 GMT-02:00 Daniel de Oliveira Mantovani <
>>> daniel.oliveira.mantovani em gmail.com>:
>>>
>>> Kleber, tem um livro chamado Advanced Programming In the Unix
>>>> Environment. Eu recomendo você ler o capítulo 3 - File I/O a sua dúvida não
>>>> tem a ver com Perl e sim com conceitos de O.S.
>>>>
>>>> 2015-02-04 15:10 GMT-02:00 Renato Santos <renato.cron em gmail.com>:
>>>>
>>>> seu programa já está feito, alguem que criou esses nomes e filehandles.
>>>>>
>>>>> o seek esta mandando ir para a ultima posicao (3 parametro com valor
>>>>> 2).
>>>>> o tell esta mandando retornar a posicao atual.
>>>>>
>>>>> signfica que o LOGFILE esta na posicao 56666091(bytes/char?)
>>>>>
>>>>> 2015-02-04 15:01 GMT-02:00 Kleber Rodrigo de Carvalho <
>>>>> kleber.carvalho em gmail.com>:
>>>>>
>>>>> Olá
>>>>>>
>>>>>> Disponibilizei meu código aqui: http://pastebin.com/T6AGHm2n
>>>>>>
>>>>>>
>>>>>> Minha duvida é:
>>>>>>
>>>>>>  seek($filehandler, 0, 2);
>>>>>>  $curreof = tell($filehandler);
>>>>>>  print("curreof=" . $curreof . "\n");
>>>>>>
>>>>>>
>>>>>> Porque quando eu executo esse trecho de código acima usando LOGFILE,
>>>>>> eu recebo curreof=56666091
>>>>>> O que isso significar?
>>>>>>
>>>>>> Obrigado
>>>>>>
>>>>>> Abraços
>>>>>> Kleber Rodrigo de Carvalho
>>>>>> Engenheiro de Software
>>>>>> KleberCarvalho.com | (15) 9-9161-3362
>>>>>>
>>>>>> Cara, estou achando que você está lendo um programa já feito, que esta
>>>>>> usando *FILEHANDLE* em si, com esses nomes (LOGFILE, INLINE)
>>>>>>
>>>>>> O jeito mais seguro, é usar um FH dentro de uma ref,
>>>>>>
>>>>>> # ler em binario
>>>>>> open(my $fh, '<:raw', '/tmp/foo.bin');
>>>>>> while( my $somebytes = <$fh>){ . .. }
>>>>>>
>>>>>> # ler em utf8
>>>>>> open(my $fh, '<:utf8', '/tmp/tmp.utf8');
>>>>>> while( my $line = <$fh>){ . .. }
>>>>>>
>>>>>> # escrever em utf8
>>>>>> open(my $fh, '>:utf8', '/tmp/tmp.utf8');
>>>>>> print $fh "uma linha\n";
>>>>>>
>>>>>>
>>>>>>
>>>>>> 2015-02-04 14:07 GMT-02:00 Gabriel Vieira <gabriel.vieira at
>>>>>> gmail.com>:
>>>>>>
>>>>>> Cara, estou achando que você está lendo um programa já feito, que esta
>>>>>> usando *FILEHANDLE* em si, com esses nomes (LOGFILE, INLINE)
>>>>>>
>>>>>> O jeito mais seguro, é usar um FH dentro de uma ref,
>>>>>>
>>>>>> # ler em binario
>>>>>> open(my $fh, '<:raw', '/tmp/foo.bin');
>>>>>> while( my $somebytes = <$fh>){ . .. }
>>>>>>
>>>>>> # ler em utf8
>>>>>> open(my $fh, '<:utf8', '/tmp/tmp.utf8');
>>>>>> while( my $line = <$fh>){ . .. }
>>>>>>
>>>>>> # escrever em utf8
>>>>>> open(my $fh, '>:utf8', '/tmp/tmp.utf8');
>>>>>> print $fh "uma linha\n";
>>>>>>
>>>>>>
>>>>>>
>>>>>> 2015-02-04 14:07 GMT-02:00 Gabriel Vieira <gabriel.vieira at
>>>>>> gmail.com>:
>>>>>>
>>>>>> > Qual a diferença de comportamento que você observou?
>>>>>> >
>>>>>> > 2015-02-04 11:05 GMT-05:00 Kleber Rodrigo de Carvalho <
>>>>>> > kleber.carvalho at gmail.com>:
>>>>>> >
>>>>>> > Pessoal,
>>>>>> >>
>>>>>> >> Estou escrevendo um programa em Perl, e preciso entender as
>>>>>> >> diferenças entre os FILEHANDLE.
>>>>>> >> Por exemplo, um programa lendo um arquivo usando LOGFILE se
>>>>>> comporta
>>>>>> >> diferente de um usando INFILE.
>>>>>> >> Estou procurando na internet por:
>>>>>> >>
>>>>>> >> perl FILEHANDLE LOGFILE INFILE
>>>>>> >> perl LOGFILE INFILE
>>>>>> >>
>>>>>> >> Mas não encontrei nada. Se encontra todos os tipos de FILEHANDLE já
>>>>>> >> ajudaria.
>>>>>> >> Será que alguém poderia me ajudar nisso?
>>>>>> >>
>>>>>> >> Muito obrigado
>>>>>> >>
>>>>>> >> Abraços
>>>>>> >> Kleber Rodrigo de Carvalho
>>>>>> >> Engenheiro de Software
>>>>>> >> KleberCarvalho.com | (15) 9-9161-3362
>>>>>> =begin disclaimer
>>>>>>    Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>>>>>>  SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
>>>>>>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
>>>>>> =end disclaimer
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Saravá,
>>>>> Renato CRON
>>>>> http://www.renatocron.com/blog/
>>>>> @renato_cron <http://twitter.com/#!/renato_cron>
>>>>>
>>>>> =begin disclaimer
>>>>>    Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>>>>>  SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
>>>>>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
>>>>> =end disclaimer
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>>
>>>> -dom
>>>>
>>>> --
>>>>
>>>> Daniel de Oliveira Mantovani
>>>> Business Analytic Specialist
>>>> Perl Evangelist /Astrophysics hobbyist.
>>>> +55 11 9 8538-9897
>>>> XOXO
>>>>
>>>
>>>
>>>
>>> --
>>>
>>> -dom
>>>
>>> --
>>>
>>> Daniel de Oliveira Mantovani
>>> Business Analytic Specialist
>>> Perl Evangelist /Astrophysics hobbyist.
>>> +55 11 9 8538-9897
>>> XOXO
>>>
>>> =begin disclaimer
>>>    Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>>>  SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
>>>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
>>> =end disclaimer
>>>
>>>
>>
>>
>> --
>> Leonardo Ruoso
>> Journalist, Perl developer and business consultant
>> Media, UFC/2006; Telecom, IFCE/1998
>>
>> =begin disclaimer
>>    Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>>  SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
>>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
>> =end disclaimer
>>
>>
>
>
> --
>
> -dom
>
> --
>
> Daniel de Oliveira Mantovani
> Business Analytic Specialist
> Perl Evangelist /Astrophysics hobbyist.
> +55 11 9 8538-9897
> XOXO
>
> =begin disclaimer
>    Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>  SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
> =end disclaimer
>
>


-- 
Leonardo Ruoso
Journalist, Perl developer and business consultant
Media, UFC/2006; Telecom, IFCE/1998
-------------- Pr�xima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20150205/c2473013/attachment.html>


More information about the SaoPaulo-pm mailing list