<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Joenio Costa's RSS feed</title><link>http://softwarelivre.org/joenio</link><description>Joenio Costa's content published at Software Livre Brasil</description><item><title>AWStats, Varnish e virtualhosts</title><description>&lt;p&gt;&lt;img src="/articles/0028/3737/varnish.jpg?1293717058" alt="Varnish" style="float: left; border: 10px solid white; border-top: 2px;" /&gt;&lt;/p&gt;
&lt;p&gt;Se você usa &lt;a href="http://awstats.sourceforge.net"&gt;AWStats&lt;/a&gt; para gerar estatísticas do seu site e seu servidor tem multiplos virtualhosts rodando sob o &lt;a href="http://www.varnish-cache.org"&gt;Varnish&lt;/a&gt; então você vai precisar configurar o Varnish pra guardar o virtualhost nos logs, caso contrário o AWStats terá problemas em saber quais entradas do log pertence a qual vhost.&lt;/p&gt;
&lt;p&gt;Se você gosta de emoções fortes e usa a versão de desenvolvimento do Varnish, que será a próxima 2.1.5, em seu servidor produção então é fácil, basta utilizar a &lt;a href="http://www.varnish-cache.org/docs/trunk/reference/varnishncsa.html"&gt;opção de linha de comando -F do varnishncsa&lt;/a&gt; para personalizar o formato dos logs.&lt;/p&gt;
&lt;p&gt;Por outro lado, se você gosta de dormir tranquilo a noite e usa versão estável então precisará de uma outra solução. O varnishncsa é responsável por ler e escrever os logs que o varnishd mantém em memória, ele &lt;a href="http://www.mail-archive.com/varnish-misc@projects.linpro.no/msg02402.html"&gt;permite "interceptar" cada linha do log e alterar o que for preciso&lt;/a&gt; e escrever de volta onde for. Como o varnishncsa guarda a URL completa de cada requisição então é possível extrair o virtualhost facilmente, com essa ideia em mente fiz um pequeno script Perl pra fazer esse trabalho, este script está disponível em:&lt;/p&gt;
&lt;p&gt;&lt;img src="/articles/0028/3736/awstats.png?1293716652" alt="Awstats" style="float: right; border: 10px solid white;" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://gitorious.org/varnisnncsa-vhost"&gt;http://gitorious.org/varnisnncsa-vhost&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Se você usa Debian pode instalar a partir do repositório abaixo:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sede.colivre.coop.br/~joenio/debian/"&gt;http://sede.colivre.coop.br/~joenio/debian/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Assim como o varnishncsa ele vai rodar como um daemon e armazenar os logs em /var/log/varnish/varnishncsa-vhost.log.&lt;/p&gt;
&lt;p&gt;Esta solução foi gentilmente financiada pela &lt;a href="http://colivre.coop.br/"&gt;Colivre&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Thu, 30 Dec 2010 10:36:52 -0200</pubDate><link>http://softwarelivre.org/joenio/blog/awstats-varnish-e-virtualhosts</link><guid>http://softwarelivre.org/joenio/blog/awstats-varnish-e-virtualhosts</guid></item><item><title>Deixando o bash um pouco mais amigável</title><description>&lt;p&gt;&lt;img src="/articles/0023/4433/terminal.png?1280533142" alt="Terminal" style="float: left; margin: 0 5px 5px 0;" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: xx-small;"&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Sempre utilizei o &lt;a href="http://www.gnu.org/software/bash/"&gt;bash&lt;/a&gt; como shell padrão, mas pelo pouco tempo que utilizei o &lt;a href="http://fishshell.org/"&gt;fish&lt;/a&gt; me acostumei com um recurso que me faz falta no bash: &lt;strong&gt;O histórico.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Fui buscar uma forma de melhorar o histórico do bash e encontrei uma &lt;a href="http://www.dicas-l.com.br/arquivo/bash_history.php"&gt;dica&lt;/a&gt; muito fácil para aumentar o tamanho dele. Basta adicionar as linhas abaixo ao seu &lt;strong&gt;.bashrc&lt;/strong&gt; para aumentar o histórco de 500 (padrão) para 5000:&lt;/p&gt;
&lt;pre&gt;export HISTSIZE=5000&lt;br /&gt;export HISTFILESIZE=$HISTSIZE&lt;/pre&gt;
&lt;p&gt;Continuei lendo a &lt;a href="http://www.gnu.org/software/bash/manual/bashref.html#Readline-Interaction"&gt;documentação&lt;/a&gt; do bash e descobri mais algumas configurações interessantes para ele (na verdade para o readline), basta adicionar ao arquivo &lt;strong&gt;.inputrc&lt;/strong&gt; as linhas abaixo:&lt;/p&gt;
&lt;pre&gt;set completion-ignore-case on&lt;/pre&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;Para ignorar maiúsculas e minúsculas ao completar.&lt;/span&gt;&lt;/p&gt;
&lt;pre&gt;set match-hidden-files off&lt;br /&gt;&lt;/pre&gt;
&lt;p&gt;Para ignorar arquivos ocultos ao completar nomes de arquivos e diretórios.&lt;/p&gt;</description><pubDate>Thu, 29 Jul 2010 08:30:18 -0300</pubDate><link>http://softwarelivre.org/joenio/blog/deixando-o-bash-um-pouco-mais-amigavel</link><guid>http://softwarelivre.org/joenio/blog/deixando-o-bash-um-pouco-mais-amigavel</guid></item><item><title>4 meses sem comer carne</title><description>&lt;p&gt;&lt;img src="/articles/0021/3347/flomar_Beef_Chart_small.png?1275599860" alt="Beef Chart por flomar disponível em Open ClipArt Library" style="float: right;" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;Não é tanto tempo assim mas é tempo suficiente pra eu assumir que consegui parar de comer carne*. Vou descrever minha experiência sobre como parei e quais foram minhas principais motivações.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;Motivações&lt;/h3&gt;
&lt;h4&gt;1) Benefícios a minha saúde&lt;/h4&gt;
&lt;p&gt;A saúde está diretamente relacionada a alimentação. Se eu como muita porcaria é certo que num futuro (talvez próximo, talvez distante) irei colher os frutos desta má alimentação. O consumo de carne está relacionado a vários problemas de saúde e por isto eu resolvi parar. Em &lt;a href="http://www.vegetarianismo.com.br/sitio/index.php?option=com_content&amp;amp;task=view&amp;amp;id=392&amp;amp;Itemid=103"&gt;21 Motivos Para Ser Vegetariano&lt;/a&gt; o autor diz:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;"16- As seguintes doenças são comuns em comedores de  carne: anemias, apendicite, artrite, câncer de mama, câncer de cólon,  câncer de próstata, prisão de ventre, diabetes, pedras na vesícula, gota, pressão alta, indigestão, obesidade, varizes. Vegetarianos há longo tempo visitam hospitais 22% menos que carnívoros e por pouco tempo. Vegetarianos têm 20% menos colesterol que carnívoros  e isso reduz consideravelmente ataques cardíacos e câncer ."&lt;/em&gt;&lt;/p&gt;
&lt;h4&gt;2) Atrocidades cometidas contra os animais&lt;/h4&gt;
&lt;p&gt;Na produção de carne e produtos alimentícios a base de animais são cometidos atrocidades que agente não vê na TV. É impressionante como os animais são tratados e como se chegou a esse ponto.&lt;/p&gt;
&lt;p&gt;Além das conversas com Humberto Júnior e &lt;a href="http://wiki.colivre.net/Aurium"&gt;Aurélio Heckert&lt;/a&gt; sobre este tema bastou eu assistir ao documentário &lt;a href="http://pt.wikipedia.org/wiki/A_Carne_%C3%89_Fraca"&gt;A Carne É Fraca&lt;/a&gt; para ficar convencido.&lt;/p&gt;
&lt;p&gt;
&lt;object height="385" width="480"&gt;
&lt;param name="movie" value="http://www.youtube.com/v/EghRqeZA-TU&amp;amp;hl=pt_BR&amp;amp;fs=1&amp;amp;color1=0x234900&amp;amp;color2=0x4e9e00" /&gt;
&lt;param name="allowFullScreen" value="true" /&gt;
&lt;param name="allowscriptaccess" value="always" /&gt;&lt;embed src="http://www.youtube.com/v/EghRqeZA-TU&amp;amp;hl=pt_BR&amp;amp;fs=1&amp;amp;color1=0x234900&amp;amp;color2=0x4e9e00" type="application/x-shockwave-flash" height="385" width="480"&gt;&lt;/embed&gt;
&lt;/object&gt;
&lt;/p&gt;
&lt;h3&gt;Como parei&lt;/h3&gt;
&lt;p&gt;Sempre pensei que seria necessário, antes de parar de comer carne, enriquecer minha dieta com bastante vegetal, verdura, e essas coisas saudáveis que eu nunca dei muita bola. Mas ao ler um pouco sobre o assunto vi que não é necessário ter uma dieta tão perfeita assim, a carne não tem tantos benefícios nutricionais quanto eu pensava e tirar ela da minha dieta não iria causar nenhum prejuízo. A maioria das coisas que li estão linkadas no &lt;a href="http://wiki.colivre.net/Aurium/Vegetarianismo"&gt;blog do Aurium&lt;/a&gt; que fez um ótimo resumo sobre Vegetarianismo citando várias fontes interessantes.&lt;/p&gt;
&lt;p&gt;Foi assim que em Fevereiro/2010 tomei a decisão de parar de comer carne*, cortei completamente a carne e seus derivados e tenho vivido muito bem até aqui sem sofrer nenhum trauma.&lt;/p&gt;
&lt;h3&gt;Benefícios percebidos&lt;/h3&gt;
&lt;p&gt;Ainda não tenho resultados práticos em relação a minha saúde mas uma coisa mudou imediatamente: passei a me preocupar mais com o que como no dia-a-dia e procuro fazer uma alimentação mais saudável e balanceada.&lt;/p&gt;
&lt;p&gt;Pretendo ir a um médico nos próximos meses fazer uma bateria de exames para verificar se estou com carência de alguma vitamina, mineral ou qualquer outra coisa, provavelmente irei postar aqui os resultados.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;&lt;em&gt;&lt;strong&gt;*&lt;/strong&gt; Ainda continuo comendo peixe, alguns acham que não é carne mas é! Porque não paro de comer peixe também? Ah, porque eu não quero.&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;</description><pubDate>Mon, 31 May 2010 21:49:49 -0300</pubDate><link>http://softwarelivre.org/joenio/blog/4-meses-sem-comer-carne</link><guid>http://softwarelivre.org/joenio/blog/4-meses-sem-comer-carne</guid></item><item><title>Novamente, problemas com Cucumber e Selenium</title><description>&lt;p&gt;Mais uma vez a dupla Cucumber e Selenium deu problema:&lt;/p&gt;
&lt;pre&gt;joenio@case ~/s/noosfero&amp;gt; cucumber -p selenium features/edit_block_of_links.feature 
Using the selenium profile...
Feature: edit_block_of_links
  As a profile owner
  I want to edit a block of links

  Background:                           # features/edit_block_of_links.feature:5
==&amp;gt; Waiting for Selenium RC server on port 4444... 

==&amp;gt; Failed to boot the Selenium RC server... exiting!
&lt;/pre&gt;
&lt;p&gt;Aparentemente o &lt;strong&gt;selenium-server&lt;/strong&gt; não incia corretamente, desconfiei do Java, removi e reinstalei todos os pacotes referente a ele mas não resolveu.&lt;/p&gt;
&lt;p&gt;Executei o selenium-server &lt;em&gt;"na mão"&lt;/em&gt;, ele inicia normalmente mas não consigo conectar nele.&lt;/p&gt;
&lt;pre&gt;joenio@case ~/.g/r/1/g/w/vendor&amp;gt; java -jar selenium-server.jar 
10:22:01.457 INFO - Java: Sun Microsystems Inc. 16.3-b01
10:22:01.458 INFO - OS: Linux 2.6.32-4-686 i386
10:22:01.474 INFO - v1.0.1 [2696], with Core v@VERSION@ [@REVISION@]
10:22:01.592 INFO - Version Jetty/5.1.x
10:22:01.594 INFO - Started HttpContext[/selenium-server/driver,/selenium-server/driver]
10:22:01.597 INFO - Started HttpContext[/selenium-server,/selenium-server]
10:22:01.597 INFO - Started HttpContext[/,/]
10:22:01.603 INFO - Started SocketListener on 0.0.0.0:4444
10:22:01.603 INFO - Started org.mortbay.jetty.Server@3a6727
&lt;/pre&gt;
&lt;p&gt;O estranho é que o o servidor esté rodando na porta 4444 e ainda assim não consigo conectar, fiz este mesmo teste em uma máquina com Debian Lenny (estou usando Debian Sid) e funcionou perfeitamente.&lt;/p&gt;
&lt;p&gt;Coincidência ou não comecei a ter problemas também com o site do Banco do Brasil, ao tentar acessar minha conta recebo o erro abaixo:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Problemas na instalação do Módulo de Segurança&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Como já estava desconfiado do Java fiz um teste acessando a URL abaixo e recebi um &lt;em&gt;calltrace&lt;/em&gt; enorme daqueles que só o Java dá pra gente.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.java.com/en/download/help/testvm.xml"&gt; http://www.java.com/en/download/help/testvm.xml&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Pesquisando no Google encontrei alguns &lt;em&gt;bugs&lt;/em&gt; relatados no Debian com proposta de &lt;em&gt;workaround&lt;/em&gt; para contornar o problema:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=561693"&gt;http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=561693&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=560238"&gt;http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=560238&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;A solução proposta pelo pessoal do Debian nos &lt;em&gt;bugs&lt;/em&gt; acima é a seguinte:&lt;/p&gt;
&lt;p&gt;Abra o arquivo &lt;em&gt;/etc/sysctl.d/bindv6only.conf&lt;/em&gt; e sete &lt;em&gt;net.ipv6.bindv6only=0&lt;/em&gt;, reinicie o &lt;em&gt;procfs&lt;/em&gt; com &lt;em&gt;invoke-rc.d procps restart&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Pra mim esta solução funcionou perfeitamente e resolveu meus probremas tanto com Selenium quando com Banco do Brasil.&lt;/p&gt;</description><pubDate>Thu, 06 May 2010 10:59:01 -0300</pubDate><link>http://softwarelivre.org/joenio/blog/novamente-problemas-com-cucumber-e-selenium</link><guid>http://softwarelivre.org/joenio/blog/novamente-problemas-com-cucumber-e-selenium</guid></item><item><title>Rodando Cucumber + Selenium no Debian sid</title><description>&lt;p&gt;Tenho trabalhado com &lt;a href="http://cukes.info/"&gt;Cucumber&lt;/a&gt; e &lt;a href="http://selenium-rc.openqa.org"&gt;Selenium&lt;/a&gt; para fazer testes de integração há algum tempo e por algum motivo hoje o Selenium não conseguiu iniciar corretamente o Firefox.&lt;/p&gt;
&lt;pre&gt;$ cucumber -p selenium&lt;br /&gt;==&amp;gt; Waiting for Selenium RC server on port 4444... Ready!&lt;br /&gt;==&amp;gt; Waiting for rails application server on port 3001... Ready!&lt;br /&gt; led to start new browser session: java.lang.RuntimeException: Firefox 3&lt;br /&gt; could not be found in the path! Please add the directory containing ''firefox-bin'&lt;br /&gt; or 'firefox'' to your PATH environment&lt;/pre&gt;
&lt;p&gt;Como tenho péssimo hábito de não prestar muita atenção nas mensagens de erro fui tentar resolver o problema e nada do que tentei funcionou, encontrei então no &lt;a href="http://www.google.com.br/search?hl=pt-BR&amp;amp;q=selenium+cucumber+firefox+debian"&gt;Google&lt;/a&gt; o post &lt;a href="http://tero.tilus.net/rutinat/2009/08/18/cucumber-running-selenium-on-debian-lenny/"&gt;Cucumber running Selenium on Debian Lenny&lt;/a&gt; e fucionou como uma luva!&lt;/p&gt;
&lt;p&gt;Como sugerido no post, adicionei ao &lt;em&gt;PATH&lt;/em&gt; o caminho &lt;em&gt;/usr/lib/iceweasel&lt;/em&gt; e o Selenium conseguiu rodar os testes numa boa com o Firefox.&lt;/p&gt;
&lt;pre&gt;$ cucumber -p selenium&lt;br /&gt;&lt;br /&gt;==&amp;gt; Waiting for Selenium RC server on port 4444... Ready!&lt;br /&gt;==&amp;gt; Waiting for rails application server on port 3001... Ready!&lt;br /&gt;    Given I am logged in as "booking"&lt;br /&gt;    And I am on /booking/rails.png?view=true&lt;br /&gt;    And I fill in "Title" with "Hey ho, let's go!"&lt;br /&gt;    And I fill in "Enter your comment" with "Hey ho, let's go!"&lt;br /&gt;    When I press "Post comment"&lt;br /&gt;    Then I should be exactly on /booking/rails.png?view=true&lt;br /&gt;&lt;br /&gt;1 scenario (1 passed)&lt;br /&gt;9 steps (9 passed)&lt;br /&gt;0m20.214s&lt;br /&gt;&lt;/pre&gt;</description><pubDate>Wed, 21 Apr 2010 19:24:03 -0300</pubDate><link>http://softwarelivre.org/joenio/blog/rodando-cucumber-selenium-no-debian-sid</link><guid>http://softwarelivre.org/joenio/blog/rodando-cucumber-selenium-no-debian-sid</guid></item></channel></rss>
