[FUG-BR] netstat: kvm_read: Bad address
Pessoal atualizei meu kernnel via cvsup copilei e instalei o tradicionalmente. quando boot a maquina noite que as rotas náo funcionava e deu o erro abaixo? residencial ~]# netstat -rn Routing tables netstat: kvm_read: Bad address Internet: DestinationGatewayFlagsRefs Use Netif Expire Protocol Family 3: DestinationGatewayFlagsNetif Expire netstat: kvm_read: Bad address netstat: kvm_read: Bad address netstat: kvm_read: Bad address Protocol Family 8: DestinationGatewayFlagsNetif Expire netstat: kvm_read: Bad address Protocol Family 14: DestinationGatewayFlagsNetif Expire Protocol Family 15: DestinationGatewayFlagsNetif Expire Protocol Family 17: DestinationGatewayFlagsNetif Expire Protocol Family 25: DestinationGatewayFlagsNetif Expire Protocol Family 26: DestinationGatewayFlagsNetif Expire netstat: kvm_read: Bad address Protocol Family 27: DestinationGatewayFlagsNetif Expire Protocol Family 29: DestinationGatewayFlagsNetif Expire - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] netstat: kvm_read: Bad address
Em 17/8/2010 09:12, jorhardware escreveu: Pessoal atualizei meu kernnel via cvsup copilei e instalei o tradicionalmente. quando boot a maquina noite que as rotas náo funcionava e deu o erro abaixo? residencial ~]# netstat -rn Routing tables netstat: kvm_read: Bad address Internet: DestinationGatewayFlagsRefs Use Netif Expire Protocol Family 3: DestinationGatewayFlagsNetif Expire netstat: kvm_read: Bad address netstat: kvm_read: Bad address netstat: kvm_read: Bad address Protocol Family 8: DestinationGatewayFlagsNetif Expire netstat: kvm_read: Bad address Protocol Family 14: DestinationGatewayFlagsNetif Expire Protocol Family 15: DestinationGatewayFlagsNetif Expire Protocol Family 17: DestinationGatewayFlagsNetif Expire Protocol Family 25: DestinationGatewayFlagsNetif Expire Protocol Family 26: DestinationGatewayFlagsNetif Expire netstat: kvm_read: Bad address Protocol Family 27: DestinationGatewayFlagsNetif Expire Protocol Family 29: DestinationGatewayFlagsNetif Expire Verifica permissão de leitura do /dev/kmem/mem. Faz um ktrace netstat -rn e depois kdump e tenta ver onde esta o erro, em qual syscall esta acontecendo o erro. - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
[FUG-BR] Script perl consome muito CPU
Ola pessoal, não sei se alguém já utilizou isso, mas eu vi no contrib do dansguardian um script Perl que funciona com FIFO, a cada modificação no arquivo ele faz um insert no banco, o script é esse ai em baixo. Tenho uma aplicação em php pra gerenciar o dansguardian e esse script foi fundamental na parte de debugar os acessos/permissões. Está rodando, o servidor não está lento, mas... Eu monitoro com o cacti, no CPU-usage, bate 150, processamento como user agora estou executando ele com o comando nice, ele baixou o processamento do user mas agora apareceu o nice, mas o total não abaixa. Pelo que li o nice é pra setar prioridades e não pra limitar o processamento, sendo assim ele realmente não vai baixar o consumo. Será que teria algo a fazer? Pra limitar esse consumo? Ou eu que não devo me preocupar com isso já que agora com o Nice ele tem prioridade baixa sobre os demais processos? Apesar que tem acesso pra caramba, pra vcs terem uma idéia, eu rotaciono o log diariamente e o arquivo diário, sem compactar dá em média 90MB. Obrigado a todos. Fernando - O Punk nunca morre! sqllogfifo.pl=== = #!/usr/local/bin/perl -w use IO::File; use DBI; use strict; my $server=192.168.x.x; my $port=3306; my $user=filter; my $pass=x; my $db=filter; my $table=log; my $dbh=DBI-connect(DBI:mysql:database=$db;host=$server;port=$port,$user,$pa ss) or die Can't connect to db: , DBI-errstr; my $sth=$dbh-prepare(INSERT INTO $table(datetime,ident,ip,url,what,how,size,why,type,filter)VALUES(?,?,?,?,?, ?,?,?,?,?)); open(FIFO, /var/log/dansguardian/access.log) or die Can't open log FIFO: $!\n; LOG: while (1) { my $message = FIFO; next LOG unless defined $message; chomp $message; chop $message; $message = substr $message,1; my($dt,$id,$ip,$url,$what,$how,$size,$a,$why,$c,$d,$type,$f,$filter)=split /,/,$message; $sth-execute($dt,$id,$ip,$url,$what,$how,$size,$why,$type,$filter); } fim= = - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] OFFTOPIC - NAS ou iSCSI no Freebsd para file server
In short, the Oracle executives said that the open source, community-driven OpenSolaris project as conceived and built by Sun Microsystems five years ago is dead. Get over it. -- Matheus Weber da Conceição - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Script perl consome muito CPU
2010/8/17 Fernando Buzon Macedo ferna...@bebedouro.sp.gov.br LOG: while (1) { Bom dia Fernando. O problema, é esse while (1) O código do script é realmente compacto, ele não realiza processamento. Então, ele não deveria, e não poderia consumir CPU. Porém, como ele está em um loop infinito, ele acaba consumindo CPU. O que você pode fazer, é melhorar esse script, com outras formas de obter os dados. Eu não conheço PERL, por isso não posso ajudar muito, mas posso dar uma sugestão: next LOG unless defined $message; Nessa parte do código, em vez de já pular para o loop novamente quando não existir nenhum dado a ser processado, poderia ser dada uma pausa... de 1 segundo por exemplo. Iria diminuir drasticamente o processamento. -- Rafael Henrique da Silva Faria - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Problema com vLan
Normalmente a vlan fica desta forma: vlan532: flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST metric 0 mtu 1500 options=2TXCSUM ether 00:1e:c9:b3:41:46 inet 187.x.x.x netmask 0xfffc broadcast 187.x.x.x media: Ethernet autoselect (1000baseT full-duplex) status: active vlan: 532 parent interface: bce0 Note que no final aparece vlan:532, no seu caso aparece no final vlan 990 vlan0: flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST mtu 1500 inet6 fe80::240:a7ff:fe11:8bd2%vlan0 prefixlen 64 scopeid 0x9 inet 172.30.0.59 netmask 0x broadcast 172.30.255.255 ether 00:40:a7:11:8b:d2 media: autoselect (1000baseT full-duplex) status: active supported media: autoselect - vlan: 990 parent interface: en0 Me parece algo errado aí. rc.conf seria desta forma: cloned_interfaces=vlan10 vlan11 ifconfig_vlan10=inet x.x.x.12 netmask 255.255.255.0 vlan 10 vlandev bce0 Att. Joel Em 16 de agosto de 2010 18:13, Rafael Henrique Faria rafaelhfa...@cenadigital.com.br escreveu: Boa noite. Alguém já viu um comportamento assim em vLan: Meu netstat -r: 172.30 link#9 UCS 6 0 vlan0 172.30.0.1 0.1f.29.58.ee.b2 UHLW 0 17 vlan0 1128 172.30.0.3 0.22.15.26.fb.a UHLW 0 4 vlan0 1128 172.30.0.4 0.22.15.15.7.d7 UHLW 0 0 vlan0 1128 172.30.0.59 localhost UHS 0 2 lo0 172.30.0.100 0.22.57.28.da.1 UHLW 0 13 vlan0 1132 172.30.0.101 0.24.73.13.2d.1 UHLW 0 1 vlan0 1134 172.30.255.255 link#9 UHLWb 2 47 vlan0 Note, que os MAC aparecem com . no lugar dos :. Todas as outras rotas, para as outras interfaces, aparecem com o MAC normal. O meu sistema, não consegue se identificar (tcpdump -i vlan0): 17:55:47.671674 arp who-has 172.30.0.59 (Broadcast) tell 172.30.0.1 17:55:47.671684 arp reply 172.30.0.59 is-at 00:40:a7:11:8b:d2 (oui Unknown) 17:55:48.664509 arp who-has 172.30.0.59 (Broadcast) tell 172.30.0.1 17:55:48.664524 arp reply 172.30.0.59 is-at 00:40:a7:11:8b:d2 (oui Unknown) 17:55:49.663208 arp who-has 172.30.0.59 (Broadcast) tell 172.30.0.1 17:55:49.663222 arp reply 172.30.0.59 is-at 00:40:a7:11:8b:d2 (oui Unknown) 17:55:50.663651 arp who-has 172.30.0.59 (Broadcast) tell 172.30.0.1 17:55:50.663665 arp reply 172.30.0.59 is-at 00:40:a7:11:8b:d2 (oui Unknown) 17:55:51.663327 arp who-has 172.30.0.59 (Broadcast) tell 172.30.0.1 17:55:51.663341 arp reply 172.30.0.59 is-at 00:40:a7:11:8b:d2 (oui Unknown) Resumindo, eu não consigo pingar ninguém. Mas todos os outros IPs desta vLan, conseguem se enxergar normalmente. Meu ifconfig: vlan0: flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST mtu 1500 inet6 fe80::240:a7ff:fe11:8bd2%vlan0 prefixlen 64 scopeid 0x9 inet 172.30.0.59 netmask 0x broadcast 172.30.255.255 ether 00:40:a7:11:8b:d2 media: autoselect (1000baseT full-duplex) status: active supported media: autoselect vlan: 990 parent interface: en0 O IP 172.30.0.101, é um switch 3com 4500, onde o meu micro está conectado, este switch consegue pingar todos os outros IPs, com exceção do IP 172.30.0.59 (que é o meu IP). A configuração do switch está assim: # interface GigabitEthernet1/0/2 port link-type hybrid port hybrid vlan 990 tagged port hybrid vlan 1 untagged broadcast-suppression pps 3000 undo jumboframe enable poe enable stp edged-port enable # Resumindo, meu switch enxerga todo mundo. Mas não me enxerga, e nem eu enxergo ele. Porém, dando um tcpdump na minha interface vlan, eu consigo ver todo o trafego da vlan, e a minha maquina encontra os MAC das outras maquinas desta mesma vlan. Parece ser um problema de conversa entre a minha maquina, e o restante da rede. Alias, eu estou usando um Mac OS X Server Leopard 10.5.7. Se alguém tiver uma luz, eu agradeço. Abraço -- Rafael Henrique da Silva Faria - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
[FUG-BR] RES: Script perl consome muito CPU
Obrigado. Eu acho que entendi sua idéia, vou ver em Perl e vou fazer, mas seria tipo: next LOG unless defined $message; if (!$message) sleep 1 else { //Resto do código } Seria isso né? Valeu, se conseguir algo posto aqui. -Mensagem original- De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em nome de Rafael Henrique Faria Enviada em: terça-feira, 17 de agosto de 2010 10:27 Para: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR) Assunto: Re: [FUG-BR] Script perl consome muito CPU 2010/8/17 Fernando Buzon Macedo ferna...@bebedouro.sp.gov.br LOG: while (1) { Bom dia Fernando. O problema, é esse while (1) O código do script é realmente compacto, ele não realiza processamento. Então, ele não deveria, e não poderia consumir CPU. Porém, como ele está em um loop infinito, ele acaba consumindo CPU. O que você pode fazer, é melhorar esse script, com outras formas de obter os dados. Eu não conheço PERL, por isso não posso ajudar muito, mas posso dar uma sugestão: next LOG unless defined $message; Nessa parte do código, em vez de já pular para o loop novamente quando não existir nenhum dado a ser processado, poderia ser dada uma pausa... de 1 segundo por exemplo. Iria diminuir drasticamente o processamento. -- Rafael Henrique da Silva Faria - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
[FUG-BR] RES: RES: Script perl consome muito CPU
Eu fiz assim: -- next LOG unless defined $message; if (!$message) { sleep(1); } else { chomp $message; chop $message; $message = substr $message,1; my($dt,$id,$ip,$url,$what,$how,$size,$a,$why,$c,$d,$type,$f,$filter)=split /,/,$message; $sth-execute($dt,$id,$ip,$url,$what,$how,$size,$why,$type,$filter); } --- O script continua funcionando, só que não mudou nada no processamento não. Eu imaginava que ele não ficaria em um loop infinito, mas que ele só faria o insert quando houvesse um file input, esse que seria o chic da coisa, se for pra ficar em loop infinito não tem graça, ai eu faço em shell! rs Vou dar uma estudada melhor nesse script, de qualquer forma muito obrigado pela dica e se vc tiver mais alguma idéia e quiser mandar eu te agradeço. Valeu. Fernando -Mensagem original- De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em nome de Fernando Buzon Macedo Enviada em: terça-feira, 17 de agosto de 2010 10:45 Para: 'Lista Brasileira de Discussão sobre FreeBSD (FUG-BR)' Assunto: [FUG-BR] RES: Script perl consome muito CPU Obrigado. Eu acho que entendi sua idéia, vou ver em Perl e vou fazer, mas seria tipo: next LOG unless defined $message; if (!$message) sleep 1 else { //Resto do código } Seria isso né? Valeu, se conseguir algo posto aqui. -Mensagem original- De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em nome de Rafael Henrique Faria Enviada em: terça-feira, 17 de agosto de 2010 10:27 Para: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR) Assunto: Re: [FUG-BR] Script perl consome muito CPU 2010/8/17 Fernando Buzon Macedo ferna...@bebedouro.sp.gov.br LOG: while (1) { Bom dia Fernando. O problema, é esse while (1) O código do script é realmente compacto, ele não realiza processamento. Então, ele não deveria, e não poderia consumir CPU. Porém, como ele está em um loop infinito, ele acaba consumindo CPU. O que você pode fazer, é melhorar esse script, com outras formas de obter os dados. Eu não conheço PERL, por isso não posso ajudar muito, mas posso dar uma sugestão: next LOG unless defined $message; Nessa parte do código, em vez de já pular para o loop novamente quando não existir nenhum dado a ser processado, poderia ser dada uma pausa... de 1 segundo por exemplo. Iria diminuir drasticamente o processamento. -- Rafael Henrique da Silva Faria - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
[FUG-BR] RES: RES: RES: Script perl consome muito CPU
Só mais uma informação. Olhando no top, ele começa usando pouco (5%), devagar que ele vai subindo, até chegar no 100%, ele pega um dos CPU's e chega até o 100%. -Mensagem original- De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em nome de Fernando Buzon Macedo Enviada em: terça-feira, 17 de agosto de 2010 11:03 Para: 'Lista Brasileira de Discussão sobre FreeBSD (FUG-BR)' Assunto: [FUG-BR] RES: RES: Script perl consome muito CPU Eu fiz assim: -- next LOG unless defined $message; if (!$message) { sleep(1); } else { chomp $message; chop $message; $message = substr $message,1; my($dt,$id,$ip,$url,$what,$how,$size,$a,$why,$c,$d,$type,$f,$filter)=split /,/,$message; $sth-execute($dt,$id,$ip,$url,$what,$how,$size,$why,$type,$filter); } --- O script continua funcionando, só que não mudou nada no processamento não. Eu imaginava que ele não ficaria em um loop infinito, mas que ele só faria o insert quando houvesse um file input, esse que seria o chic da coisa, se for pra ficar em loop infinito não tem graça, ai eu faço em shell! rs Vou dar uma estudada melhor nesse script, de qualquer forma muito obrigado pela dica e se vc tiver mais alguma idéia e quiser mandar eu te agradeço. Valeu. Fernando -Mensagem original- De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em nome de Fernando Buzon Macedo Enviada em: terça-feira, 17 de agosto de 2010 10:45 Para: 'Lista Brasileira de Discussão sobre FreeBSD (FUG-BR)' Assunto: [FUG-BR] RES: Script perl consome muito CPU Obrigado. Eu acho que entendi sua idéia, vou ver em Perl e vou fazer, mas seria tipo: next LOG unless defined $message; if (!$message) sleep 1 else { //Resto do código } Seria isso né? Valeu, se conseguir algo posto aqui. -Mensagem original- De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em nome de Rafael Henrique Faria Enviada em: terça-feira, 17 de agosto de 2010 10:27 Para: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR) Assunto: Re: [FUG-BR] Script perl consome muito CPU 2010/8/17 Fernando Buzon Macedo ferna...@bebedouro.sp.gov.br LOG: while (1) { Bom dia Fernando. O problema, é esse while (1) O código do script é realmente compacto, ele não realiza processamento. Então, ele não deveria, e não poderia consumir CPU. Porém, como ele está em um loop infinito, ele acaba consumindo CPU. O que você pode fazer, é melhorar esse script, com outras formas de obter os dados. Eu não conheço PERL, por isso não posso ajudar muito, mas posso dar uma sugestão: next LOG unless defined $message; Nessa parte do código, em vez de já pular para o loop novamente quando não existir nenhum dado a ser processado, poderia ser dada uma pausa... de 1 segundo por exemplo. Iria diminuir drasticamente o processamento. -- Rafael Henrique da Silva Faria - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] RES: Script perl consome muito CPU
2010/8/17 Fernando Buzon Macedo ferna...@bebedouro.sp.gov.br Obrigado. Eu acho que entendi sua idéia, vou ver em Perl e vou fazer, mas seria tipo: next LOG unless defined $message; if (!$message) sleep 1 else { //Resto do código } Você colocou o sleep depois do retorno do loop. O comando que faz o look é o next LOG. Eu tentaria algo do tipo: LOG: sleep 1; while (1) { my $message = FIFO; next LOG unless defined $message; Seria isso né? Valeu, se conseguir algo posto aqui. -Mensagem original- De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em nome de Rafael Henrique Faria Enviada em: terça-feira, 17 de agosto de 2010 10:27 Para: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR) Assunto: Re: [FUG-BR] Script perl consome muito CPU 2010/8/17 Fernando Buzon Macedo ferna...@bebedouro.sp.gov.br LOG: while (1) { Bom dia Fernando. O problema, é esse while (1) O código do script é realmente compacto, ele não realiza processamento. Então, ele não deveria, e não poderia consumir CPU. Porém, como ele está em um loop infinito, ele acaba consumindo CPU. O que você pode fazer, é melhorar esse script, com outras formas de obter os dados. Eu não conheço PERL, por isso não posso ajudar muito, mas posso dar uma sugestão: next LOG unless defined $message; Nessa parte do código, em vez de já pular para o loop novamente quando não existir nenhum dado a ser processado, poderia ser dada uma pausa... de 1 segundo por exemplo. Iria diminuir drasticamente o processamento. -- Rafael Henrique da Silva Faria - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd -- Rafael Henrique da Silva Faria - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] RES: Script perl consome muito CPU
Em 17-08-2010 11:21, Rafael Henrique Faria escreveu: 2010/8/17 Fernando Buzon Macedo ferna...@bebedouro.sp.gov.br Obrigado. Eu acho que entendi sua idéia, vou ver em Perl e vou fazer, mas seria tipo: next LOG unless defined $message; if (!$message) sleep 1 else { //Resto do código } Você colocou o sleep depois do retorno do loop. O comando que faz o look é o next LOG. Eu tentaria algo do tipo: LOG: sleep 1; while (1) { my $message = FIFO; next LOG unless defined $message; Seria isso né? Valeu, se conseguir algo posto aqui. -Mensagem original- De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em nome de Rafael Henrique Faria Enviada em: terça-feira, 17 de agosto de 2010 10:27 Para: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR) Assunto: Re: [FUG-BR] Script perl consome muito CPU 2010/8/17 Fernando Buzon Macedo ferna...@bebedouro.sp.gov.br LOG: while (1) { Bom dia Fernando. O problema, é esse while (1) O código do script é realmente compacto, ele não realiza processamento. Então, ele não deveria, e não poderia consumir CPU. Porém, como ele está em um loop infinito, ele acaba consumindo CPU. O que você pode fazer, é melhorar esse script, com outras formas de obter os dados. Eu não conheço PERL, por isso não posso ajudar muito, mas posso dar uma sugestão: next LOG unless defined $message; Nessa parte do código, em vez de já pular para o loop novamente quando não existir nenhum dado a ser processado, poderia ser dada uma pausa... de 1 segundo por exemplo. Iria diminuir drasticamente o processamento. -- Rafael Henrique da Silva Faria - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd Sugiro pesquisar por técnicas de pooling em perl. Esse while (1) é absurdo. Att signature.asc Description: OpenPGP digital signature - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
[FUG-BR] Fwd: [e2e] Software for FreeBSD TCP RD (resend of mail dated 2010-08-03)
-- Forwarded message -- From: Lawrence Stewart Date: 2010/8/16 Subject: [e2e] Software for FreeBSD TCP RD (resend of mail dated 2010-08-03) To: end2end-inter...@postel.org Hi all, (apologies for any duplicates you have received) We're pleased to announce the release of a substantial set of new and updated BSD licenced software for TCP experimentation and research using FreeBSD: - CAIA-Hamilton Delay Congestion Control Algorithm v0.1 (new) - Hamilton Delay Congestion Control Algorithm v0.2 (update) - Vegas Congestion Control Algorithm v0.2 (update) - H-TCP Congestion Control Algorithm v0.12 (update) - CUBIC Congestion Control Algorithm v0.10 (update) - Statistical Information For TCP Research (SIFTR) v1.2.3 (update) - Enhanced Round Trip Time (ERTT) Khelp Module v0.2 (update) - Khelp Framework for FreeBSD v0.1.1 (update) - Modular TCP Congestion Control for FreeBSD v0.10.0 (update) A more detailed summary of the various tools/patches is included at the end of this email. Everything mentioned above along with other papers, patches and software relevant/useful for protocol analysis, debugging and experimental research is available from: http://caia.swin.edu.au/urp/newtcp/tools.html The software was developed as part of the NewTCP research project at Swinburne University's Centre for Advanced Internet Architectures, made possible in part by a grant from the Cisco University Research Program Fund at Community Foundation Silicon Valley. Testing and development was further assisted by a grant from the FreeBSD Foundation. We welcome any feedback and hope you enjoy playing with the code and tools. Cheers, Lawrence Stewart, David Hayes and Grenville Armitage http://caia.swin.edu.au NB: CAIA-Hamilton Delay and Hamilton Delay are our working names for algorithms which do not have established names in the literature. CAIA-Hamilton Delay Congestion Control Algorithm v0.1 [1,2] -- A FreeBSD loadable kernel module that implements an experimental delay based congestion control algorithm proposed by the Hamilton Institute [3] but with modifications made by CAIA [4]. It builds on Hamilton's initial proposal by adding tolerance to non-congestion related losses and still aims to allow delay- and loss-based algorithms to fairly coexist. Hamilton Delay Congestion Control Algorithm v0.2 [5,6] -- A FreeBSD loadable kernel module that implements an experimental delay based congestion control algorithm proposed by the Hamilton Institute [3]. It provides a first step toward the ability of delay based algorithms to fairly coexist with loss based algorithms. Vegas Congestion Control Algorithm v0.2 [7,8] -- A FreeBSD loadable kernel module that implements the Vegas delay-based congestion control algorithm [9]. H-TCP Congestion Control Algorithm v0.12 [10,11] -- A FreeBSD loadable kernel module that implements the H-TCP loss based TCP congestion control algorithm [12]. CUBIC Congestion Control Algorithm v0.10 [13,14] -- A FreeBSD loadable kernel module that implements the CUBIC loss based TCP congestion control algorithm [15]. CUBIC is the current default algorithm used by Linux. Statistical Information For TCP Research (SIFTR) v1.2.3 [16,17] -- A FreeBSD 6/7/8/9 kernel module that logs a range of statistics on active TCP connections to a log file. It provides the ability to make highly granular measurements of TCP connection state, aimed at system administrators, developers and researchers. NB: SIFTR has been imported into FreeBSD's head svn branch (a.k.a. 9-CURRENT) as revision 209662 and will be backported to 8-STABLE in time for 8.2-RELEASE. Enhanced Round Trip Time (ERTT) Khelp Module v0.2 [18,19] -- A FreeBSD loadable kernel module that provides enhanced RTT measurements for use by delay and rate based TCP congestion control algorithms. Robust estimates of RTT are provided even when the receiver uses delayed acknowledgements, TCP segmentation offload (TSO) or Selective Acknowledgements (SACK). This module is required by the delay based congestion control algorithms. Khelp Framework for FreeBSD v0.1.1 [20,21] -- A FreeBSD kernel patch that provides support for generic kernel modules known as helpers to hook into arbitrary points within the kernel and provide service(s) to the running system. This forms the foundation for the ERTT Khelp module. Modular TCP Congestion Control for FreeBSD v0.10.0 [22,23]
Re: [FUG-BR] OFFTOPIC - NAS ou iSCSI no Freebsd para file server
Mas o solaris 10/9 não tem suporte a muitas coisas que existem no open solaris svn134. ( raidz3. Zfs version 15 é o máximo que ele aceita se vc instalou o open solaris svn supeior ao svn 122 e criou um zfs novo o solaris não deve reconhecer devido a versão do zfs ) as configurações são extricidamente solaris tem que ter conhecimento sobre como configurar o sfw e o rbac para habilitar os serviços Estou esperando sair a nova versão do solaris 11 express para verificar se vai mudar algo ou vai morrer mesmo -- - = - = - = - = - = - = - = - = - = - . Of course it runsWilliam David Armstrong |== Bio Systems Security Networking ' FreeBSD MSN / GT biosystems gmail . com http://biosystems.ath.cx:8080/ http://biosystems.broker.freenet6.net/ -- Em 16/08/2010, às 19:56, Leo Garcia getz@gmail.com escreveu: Faz com o Solaris! É free! Por isto o OpenMorreu ... abriram de vez o Solaris Em 16 de agosto de 2010 19:33, Leonardo Augusto lalin...@gmail.com escreveu: Entao Rafael, OPEN SOLARIS OFFICIALY IS DEAD http://www.theregister.co.uk/2010/08/13/opensolaris_is_dead/ Por essas e outras que eu ODEIO a oracle. Meu projeto de iScsi morreu entao Quem será o próximo da lista ? O fim da SUN é o inicio do apocalipse ehehe []'s 2010/8/11 Rafael Henrique Faria rafaelhfa...@cenadigital.com.br: Isso é verdade... e deve ser levado em conta. O que eu verifiquei, se o OpenSolaris, realmente atendeu ao cenário, sem problemas... E ele atendeu. Então, eu não preciso esperar uma atualização para atender algum recurso que eu precise. Afinal, tal atualização pode nunca surgir. O meu storage, fica isolado da rede principal, possui uma rede exclusiva, e fisicamente separada da rede de internet, então eu não preciso me preocupar com invasão, ou seja, com patches de correção. Afinal, não sabemos o que a Oracle planeja para o OpenSolaris. Pode ser que ele continue a ser mantido, mesmo que o Solaris não esteja mais disponivel com o código aberto. Mas ao mesmo tempo pode ser que os desenvolvedores do OpenSolaris desistam do projeto... o futuro é incerto. Veja se a solução atual te atende, e se vc precisará de suporte para ele no futuro. Leve tudo em conta. Principalmente, que por enquanto, o OpenSolaris, mesmo com futuro incerto, possui o iSCSI superior a qualquer outra solução livre. A não ser que você esteja disposto a gastar uns 40.000 dolares em uma solução de storage comercial. :D 2010/8/11 irado furioso com tudo ir...@bsd.com.br Em Wed, 11 Aug 2010 15:37:02 -0300 Rafael Henrique Faria rafaelhfa...@cenadigital.com.br, conhecido consumidor/usuário de drogas (Windows e BigMac com Coke) escreveu: Boa tarde Leonardo. Se você quiser utilizar o iSCSI em produção, acredito que o mais recomendável seja o OpenSolaris. só é preciso tomar cuidado porque não se sabe bem o que vai acontecer com o OpenSolaris - futuro meio nebuloso, ao que parece. http://www.neowin.net/news/solaris-10-no-longer-free-future-of-opensolaris-questioned -- saudações, irado furioso com tudo Linux User 179402/FreeBSD BSD50853/FUG-BR 154 Não uso drogas - 100% Miko$hit-free quando si muere la carne la alma busca su sitio - Inti Illimani - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd -- Rafael Henrique da Silva Faria - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
[FUG-BR] RES: RES: Script perl consome muito CPU
Como disse, peguei esse script já pronto no site do dansguardian. De programação eu conheço muito pouco. Zhu Sha Zang, sem querer ser folgado, mas você não teria uma opção simples pra ficar no lugar de while (1) aí? De qualquer forma obrigado, vou pesquisar sobre pooling Perl. Valeu. -Mensagem original- De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em nome de Zhu Sha Zang Enviada em: terça-feira, 17 de agosto de 2010 11:28 Para: freebsd@fug.com.br Assunto: Re: [FUG-BR] RES: Script perl consome muito CPU Em 17-08-2010 11:21, Rafael Henrique Faria escreveu: 2010/8/17 Fernando Buzon Macedo ferna...@bebedouro.sp.gov.br Obrigado. Eu acho que entendi sua idéia, vou ver em Perl e vou fazer, mas seria tipo: next LOG unless defined $message; if (!$message) sleep 1 else { //Resto do código } Você colocou o sleep depois do retorno do loop. O comando que faz o look é o next LOG. Eu tentaria algo do tipo: LOG: sleep 1; while (1) { my $message = FIFO; next LOG unless defined $message; Seria isso né? Valeu, se conseguir algo posto aqui. -Mensagem original- De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em nome de Rafael Henrique Faria Enviada em: terça-feira, 17 de agosto de 2010 10:27 Para: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR) Assunto: Re: [FUG-BR] Script perl consome muito CPU 2010/8/17 Fernando Buzon Macedo ferna...@bebedouro.sp.gov.br LOG: while (1) { Bom dia Fernando. O problema, é esse while (1) O código do script é realmente compacto, ele não realiza processamento. Então, ele não deveria, e não poderia consumir CPU. Porém, como ele está em um loop infinito, ele acaba consumindo CPU. O que você pode fazer, é melhorar esse script, com outras formas de obter os dados. Eu não conheço PERL, por isso não posso ajudar muito, mas posso dar uma sugestão: next LOG unless defined $message; Nessa parte do código, em vez de já pular para o loop novamente quando não existir nenhum dado a ser processado, poderia ser dada uma pausa... de 1 segundo por exemplo. Iria diminuir drasticamente o processamento. -- Rafael Henrique da Silva Faria - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd Sugiro pesquisar por técnicas de pooling em perl. Esse while (1) é absurdo. Att - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Fwd: [e2e] Software for FreeBSD TCP RD (resend of mail dated 2010-08-03)
Alex Moura escreveu: -- Forwarded message -- From: Lawrence Stewart Date: 2010/8/16 Subject: [e2e] Software for FreeBSD TCP RD (resend of mail dated 2010-08-03) To: end2end-inter...@postel.org Hi all, (apologies for any duplicates you have received) We're pleased to announce the release of a substantial set of new and updated BSD licenced software for TCP experimentation and research using FreeBSD: - CAIA-Hamilton Delay Congestion Control Algorithm v0.1 (new) - Hamilton Delay Congestion Control Algorithm v0.2 (update) - Vegas Congestion Control Algorithm v0.2 (update) - H-TCP Congestion Control Algorithm v0.12 (update) - CUBIC Congestion Control Algorithm v0.10 (update) - Statistical Information For TCP Research (SIFTR) v1.2.3 (update) - Enhanced Round Trip Time (ERTT) Khelp Module v0.2 (update) - Khelp Framework for FreeBSD v0.1.1 (update) - Modular TCP Congestion Control for FreeBSD v0.10.0 (update) Muito bom! Sem falar que no final tem um patch para o IPerf funcionar no freebsd... -- Welkson Renny de Medeiros Desenvolvimento / Gerência de Redes Focus Automação Comercial FreeBSD Community Member - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Fwd: [e2e] Software for FreeBSD TCP RD (resend of mail dated 2010-08-03)
Welkson Renny de Medeiros escreveu: Alex Moura escreveu: -- Forwarded message -- From: Lawrence Stewart Date: 2010/8/16 Subject: [e2e] Software for FreeBSD TCP RD (resend of mail dated 2010-08-03) To: end2end-inter...@postel.org Hi all, (apologies for any duplicates you have received) We're pleased to announce the release of a substantial set of new and updated BSD licenced software for TCP experimentation and research using FreeBSD: - CAIA-Hamilton Delay Congestion Control Algorithm v0.1 (new) - Hamilton Delay Congestion Control Algorithm v0.2 (update) - Vegas Congestion Control Algorithm v0.2 (update) - H-TCP Congestion Control Algorithm v0.12 (update) - CUBIC Congestion Control Algorithm v0.10 (update) - Statistical Information For TCP Research (SIFTR) v1.2.3 (update) - Enhanced Round Trip Time (ERTT) Khelp Module v0.2 (update) - Khelp Framework for FreeBSD v0.1.1 (update) - Modular TCP Congestion Control for FreeBSD v0.10.0 (update) Muito bom! Sem falar que no final tem um patch para o IPerf funcionar no freebsd... X fiz confusão... iperf já faz parte do ports... confundi com um sistema de monitoração de banda que só funciona no Linux (esqueci o nome). -- Welkson Renny de Medeiros Desenvolvimento / Gerência de Redes Focus Automação Comercial FreeBSD Community Member - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] RES: RES: Script perl consome muito CPU
Mas qual o proposito desse script ? Pegar o que vai sendo gravado no var/log/dansguardian/access.log e inserir no mysql ?? Se for isso, o problema é que vc fica num loop e lendo o arquivo Pq nao faz o seguinte, usa o crontab, pra executar esse script a cada minuto, aí o script le o log, registra o numero de bytes lidos para dar um fseek na proxima leitura... e grava no mysql.. Vai entrar, ler, gravar e sair... Qualquer coisa que vc faca que fique num loop lendo um arquivo do filesystem vai ficar com alto nivel de consumo de cpu, pois nao tem um evento do SO onfilechange eheh pra chamar teu perl. Se voce quer um processo que faca isso acho que tens que usar threads ou de C ou java para que nao consuma tanta cpu, um processo com while + sleep consome. Acho que é isso 2010/8/17 Fernando Buzon Macedo ferna...@bebedouro.sp.gov.br: Como disse, peguei esse script já pronto no site do dansguardian. De programação eu conheço muito pouco. Zhu Sha Zang, sem querer ser folgado, mas você não teria uma opção simples pra ficar no lugar de while (1) aí? De qualquer forma obrigado, vou pesquisar sobre pooling Perl. Valeu. -Mensagem original- De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em nome de Zhu Sha Zang Enviada em: terça-feira, 17 de agosto de 2010 11:28 Para: freebsd@fug.com.br Assunto: Re: [FUG-BR] RES: Script perl consome muito CPU Em 17-08-2010 11:21, Rafael Henrique Faria escreveu: 2010/8/17 Fernando Buzon Macedo ferna...@bebedouro.sp.gov.br Obrigado. Eu acho que entendi sua idéia, vou ver em Perl e vou fazer, mas seria tipo: next LOG unless defined $message; if (!$message) sleep 1 else { //Resto do código } Você colocou o sleep depois do retorno do loop. O comando que faz o look é o next LOG. Eu tentaria algo do tipo: LOG: sleep 1; while (1) { my $message = FIFO; next LOG unless defined $message; Seria isso né? Valeu, se conseguir algo posto aqui. -Mensagem original- De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em nome de Rafael Henrique Faria Enviada em: terça-feira, 17 de agosto de 2010 10:27 Para: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR) Assunto: Re: [FUG-BR] Script perl consome muito CPU 2010/8/17 Fernando Buzon Macedo ferna...@bebedouro.sp.gov.br LOG: while (1) { Bom dia Fernando. O problema, é esse while (1) O código do script é realmente compacto, ele não realiza processamento. Então, ele não deveria, e não poderia consumir CPU. Porém, como ele está em um loop infinito, ele acaba consumindo CPU. O que você pode fazer, é melhorar esse script, com outras formas de obter os dados. Eu não conheço PERL, por isso não posso ajudar muito, mas posso dar uma sugestão: next LOG unless defined $message; Nessa parte do código, em vez de já pular para o loop novamente quando não existir nenhum dado a ser processado, poderia ser dada uma pausa... de 1 segundo por exemplo. Iria diminuir drasticamente o processamento. -- Rafael Henrique da Silva Faria - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd Sugiro pesquisar por técnicas de pooling em perl. Esse while (1) é absurdo. Att - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
[FUG-BR] RES: RES: RES: Script perl consome muito CPU
Leonardo, muito obrigado pelas informações. Eu pensei que essa parada de FIFO do Perl fizesse o papel desse evento onfilechange, afinal file input file output, mas então não é o caso então... rs Já tinha pensado em fazer eu mesmo, minha dúvida tinha sido sobre essa do fseek na próxima leitura, como você sugeriu registrar o numero de bytes da leitura anterior, está certo mesmo... Foi apenas uma ilusão pelo nome FIFO que me confundiu. Pensei ter descoberto o onfilechange, por isso nem pensei em outra opção. Vou rever meus conceitos. Muito obrigado a todos da lista, aqui você encontra mesmo! Hehehe abs -Mensagem original- De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em nome de Leonardo Augusto Enviada em: terça-feira, 17 de agosto de 2010 13:31 Para: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR) Assunto: Re: [FUG-BR] RES: RES: Script perl consome muito CPU Mas qual o proposito desse script ? Pegar o que vai sendo gravado no var/log/dansguardian/access.log e inserir no mysql ?? Se for isso, o problema é que vc fica num loop e lendo o arquivo Pq nao faz o seguinte, usa o crontab, pra executar esse script a cada minuto, aí o script le o log, registra o numero de bytes lidos para dar um fseek na proxima leitura... e grava no mysql.. Vai entrar, ler, gravar e sair... Qualquer coisa que vc faca que fique num loop lendo um arquivo do filesystem vai ficar com alto nivel de consumo de cpu, pois nao tem um evento do SO onfilechange eheh pra chamar teu perl. Se voce quer um processo que faca isso acho que tens que usar threads ou de C ou java para que nao consuma tanta cpu, um processo com while + sleep consome. Acho que é isso 2010/8/17 Fernando Buzon Macedo ferna...@bebedouro.sp.gov.br: Como disse, peguei esse script já pronto no site do dansguardian. De programação eu conheço muito pouco. Zhu Sha Zang, sem querer ser folgado, mas você não teria uma opção simples pra ficar no lugar de while (1) aí? De qualquer forma obrigado, vou pesquisar sobre pooling Perl. Valeu. -Mensagem original- De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em nome de Zhu Sha Zang Enviada em: terça-feira, 17 de agosto de 2010 11:28 Para: freebsd@fug.com.br Assunto: Re: [FUG-BR] RES: Script perl consome muito CPU Em 17-08-2010 11:21, Rafael Henrique Faria escreveu: 2010/8/17 Fernando Buzon Macedo ferna...@bebedouro.sp.gov.br Obrigado. Eu acho que entendi sua idéia, vou ver em Perl e vou fazer, mas seria tipo: next LOG unless defined $message; if (!$message) sleep 1 else { //Resto do código } Você colocou o sleep depois do retorno do loop. O comando que faz o look é o next LOG. Eu tentaria algo do tipo: LOG: sleep 1; while (1) { my $message = FIFO; next LOG unless defined $message; Seria isso né? Valeu, se conseguir algo posto aqui. -Mensagem original- De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em nome de Rafael Henrique Faria Enviada em: terça-feira, 17 de agosto de 2010 10:27 Para: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR) Assunto: Re: [FUG-BR] Script perl consome muito CPU 2010/8/17 Fernando Buzon Macedo ferna...@bebedouro.sp.gov.br LOG: while (1) { Bom dia Fernando. O problema, é esse while (1) O código do script é realmente compacto, ele não realiza processamento. Então, ele não deveria, e não poderia consumir CPU. Porém, como ele está em um loop infinito, ele acaba consumindo CPU. O que você pode fazer, é melhorar esse script, com outras formas de obter os dados. Eu não conheço PERL, por isso não posso ajudar muito, mas posso dar uma sugestão: next LOG unless defined $message; Nessa parte do código, em vez de já pular para o loop novamente quando não existir nenhum dado a ser processado, poderia ser dada uma pausa... de 1 segundo por exemplo. Iria diminuir drasticamente o processamento. -- Rafael Henrique da Silva Faria - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd Sugiro pesquisar por técnicas de pooling em perl. Esse while (1) é absurdo. Att - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] RES: RES: RES: Script perl consome muito CPU
Zhu Sha Zang escreveu : Sugiro pesquisar por técnicas de pooling em perl. Esse while (1) é absurdo. exatamente.. tem que usar algum pooling pra IO(de preferencia assincrona) e uma logica de eventos no estilo publisher/subscriber no freebsd nativamente existe o kqueue.. e no linux o epool.. tem que ver qual o nivel de acesso do perl a isso ai infelizmente(ou felizmente) estou afastado do perl desde 97 por ai.. entao tem que dar uma pesquisada. dependendo do seu servidor web..quem sabe não exista um suport nativo , pra escrever em outras fontes?! se vc tiver escolha de linguagem, e querendo fazer isso em script, sugeriria python ou até mesmo erlang(outra embutida no servidor .. a php), que são menos cripticas e onde vc teria mais suporte.. enfim.. acho que solução pronta pra isso..vai ser meio dificil.. sempre tem que customizar..dai a utilidade de usar uma linguagem de script pra isso 2010/8/17 Fernando Buzon Macedo ferna...@bebedouro.sp.gov.br Leonardo, muito obrigado pelas informações. Eu pensei que essa parada de FIFO do Perl fizesse o papel desse evento onfilechange, afinal file input file output, mas então não é o caso então... rs Já tinha pensado em fazer eu mesmo, minha dúvida tinha sido sobre essa do fseek na próxima leitura, como você sugeriu registrar o numero de bytes da leitura anterior, está certo mesmo... Foi apenas uma ilusão pelo nome FIFO que me confundiu. Pensei ter descoberto o onfilechange, por isso nem pensei em outra opção. Vou rever meus conceitos. Muito obrigado a todos da lista, aqui você encontra mesmo! Hehehe abs -Mensagem original- De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em nome de Leonardo Augusto Enviada em: terça-feira, 17 de agosto de 2010 13:31 Para: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR) Assunto: Re: [FUG-BR] RES: RES: Script perl consome muito CPU Mas qual o proposito desse script ? Pegar o que vai sendo gravado no var/log/dansguardian/access.log e inserir no mysql ?? Se for isso, o problema é que vc fica num loop e lendo o arquivo Pq nao faz o seguinte, usa o crontab, pra executar esse script a cada minuto, aí o script le o log, registra o numero de bytes lidos para dar um fseek na proxima leitura... e grava no mysql.. Vai entrar, ler, gravar e sair... Qualquer coisa que vc faca que fique num loop lendo um arquivo do filesystem vai ficar com alto nivel de consumo de cpu, pois nao tem um evento do SO onfilechange eheh pra chamar teu perl. Se voce quer um processo que faca isso acho que tens que usar threads ou de C ou java para que nao consuma tanta cpu, um processo com while + sleep consome. Acho que é isso 2010/8/17 Fernando Buzon Macedo ferna...@bebedouro.sp.gov.br: Como disse, peguei esse script já pronto no site do dansguardian. De programação eu conheço muito pouco. Zhu Sha Zang, sem querer ser folgado, mas você não teria uma opção simples pra ficar no lugar de while (1) aí? De qualquer forma obrigado, vou pesquisar sobre pooling Perl. Valeu. -Mensagem original- De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em nome de Zhu Sha Zang Enviada em: terça-feira, 17 de agosto de 2010 11:28 Para: freebsd@fug.com.br Assunto: Re: [FUG-BR] RES: Script perl consome muito CPU Em 17-08-2010 11:21, Rafael Henrique Faria escreveu: 2010/8/17 Fernando Buzon Macedo ferna...@bebedouro.sp.gov.br Obrigado. Eu acho que entendi sua idéia, vou ver em Perl e vou fazer, mas seria tipo: next LOG unless defined $message; if (!$message) sleep 1 else { //Resto do código } Você colocou o sleep depois do retorno do loop. O comando que faz o look é o next LOG. Eu tentaria algo do tipo: LOG: sleep 1; while (1) { my $message = FIFO; next LOG unless defined $message; Seria isso né? Valeu, se conseguir algo posto aqui. -Mensagem original- De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em nome de Rafael Henrique Faria Enviada em: terça-feira, 17 de agosto de 2010 10:27 Para: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR) Assunto: Re: [FUG-BR] Script perl consome muito CPU 2010/8/17 Fernando Buzon Macedo ferna...@bebedouro.sp.gov.br LOG: while (1) { Bom dia Fernando. O problema, é esse while (1) O código do script é realmente compacto, ele não realiza processamento. Então, ele não deveria, e não poderia consumir CPU. Porém, como ele está em um loop infinito, ele acaba consumindo CPU. O que você pode fazer, é melhorar esse script, com outras formas de obter os dados. Eu não conheço PERL, por isso não posso ajudar muito, mas posso dar uma sugestão: next LOG unless defined $message; Nessa parte do código, em vez de já pular para o loop novamente quando não existir nenhum dado a ser processado, poderia ser dada uma pausa... de 1 segundo por exemplo.