3 Replies Latest reply on Feb 20, 2015 8:55 AM by mauriciomag

    Logar ip do cliente no server.log

    sergio.tondin

      Pessoal, Bom Dia,

       

      Gostaria logar os ips de acessos dos clientes no server.log além do localhost_acess.log*

       

      Isso é possível com alguma configuração do jboss-log4j.xml.

       

      Estou usando jboss-5.1GA.

       

      grato

        • 1. Re: Logar ip do cliente no server.log
          rimolive

          Não tenho tanta certeza assim. De qualquer forma, é possível registrar uma Valve no JBoss Web para isso: AccessLogValve (JBoss Web API Documentation)

           

          Veja se esse link te ajuda.

          • 2. Re: Logar ip do cliente no server.log
            adrianoschmidt

            Opa,

             

            A forma mais elegante é a que o Ricardo comentou, mas dá pra fazer na mão também... meio gambiarrento, mas seria algo assim:

             

            // busca o IP com request.getRemoteAddr() ou de alguma outra forma (qualquer coisa descompila a classe que o Ricardo falou pra saber como pegar o IP hahah)

            String ip = request.getRemoteAddr();

             

            // printa no server.log

            System.out.println("IP: " + ip);

            //ou algo assim: Logger.info("IP: " + ip);

             

            Só jogar esse código num Filter HTTP ou no início do método que você quer que seja gerado log e pronto. O IP de cada acesso sairá no server.log.

             

            Abraço!

            Adriano Schmidt

            • 3. Re: Logar ip do cliente no server.log
              mauriciomag

              Sérgio,


              Eu também desconheço outra forma além da configuração que você mesmo citou... seria algo como:

               

              <Valve className="org.apache.catalina.valves.FastCommonAccessLogValve"

                         prefix="localhost_access_log." suffix=".log"

                         pattern="common" directory="${jboss.server.home.dir}/log"

                         resolveHosts="false" />

               

              Se achou a solução depois compartilha..

               

              Vlw