Configurando Log4j no JBoss AS 7.1.1 – Parte1

Postado em Atualizado em

Olá,

Hoje vamos aprender como configurar o log4j embarcado em nossa aplicação. Mas antes vale lembrar que também podemos utilizar essa configuração como um módulo do JBoss AS 7,  o que será abordado na próxima parte.

O primeiro passo é criar um projeto do tipo web no eclipse e como server runtime adicione o JBoss AS 7.1.1.

log-01

Agora no WEB-INF/classes (src) da sua aplicação crie o arquivo log4j.properties:

log-2

Adicione o conteúdo abaixo nesse arquivo de configuração:

log4j.rootLogger=warn, stdout, R
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) * %m%n
log4j.logger.com.jbossdivers=INFO, R

Crie uma servlet para realizarmos os testes de log:

package com.jbossdivers.test;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet("/LoggerServlet")
public class LoggerServlet extends HttpServlet {

  private static org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger(LoggerServlet.class);

  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException,
    IOException {

    logger.info("***********Tempo agora*************");
    logger.info(System.currentTimeMillis());
    logger.info("*********************************************");

    PrintWriter out = response.getWriter();
    out.println("Apenas testando o log!");
   }
 }

Baixe o jar log4j-1.2.17.jar e coloque no WEB-INF/lib da sua aplicação.

Ainda no WEB-INF crie o arquivo jboss-deployment-structure.xml e adicione o conteúdo abaixo:

<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure>
  <deployment>
    <exclusions>
      <module name="org.apache.log4j" />
    </exclusions>
  </deployment>
</jboss-deployment-structure>

Quando utilizamos a tag <exclusions> estamos dizendo ao JBoss para ignorar os módulos que estão ali adicionados por exemplo <module name=”org.apache.log4j” />.

Inicie o JBoss e acesse a url http://localhost:8080/MyAppExample/LoggerServlet e verifique se o logs funcionaram corretamente.

21:51:07,852 INFO  [stdout] (http-localhost-127.0.0.1-8080-1)  INFO [http-localhost-127.0.0.1-8080-1] (LoggerServlet.java:21) * ***********Tempo agora*************

21:51:07,857 INFO  [stdout] (http-localhost-127.0.0.1-8080-1)  INFO [http-localhost-127.0.0.1-8080-1] (LoggerServlet.java:22) * 1354492267857

21:51:07,857 INFO  [stdout] (http-localhost-127.0.0.1-8080-1)  INFO [http-localhost-127.0.0.1-8080-1] (LoggerServlet.java:23) * *********************************************

Espero que tenha ajudado.

Abraços

6 comentários em “Configurando Log4j no JBoss AS 7.1.1 – Parte1

    Mauricio Magnani Jr respondido:
    2 de dezembro de 2012 às 21:58
    flaviano disse:
    12 de junho de 2013 às 16:26

    olá, bom o posto tem a parte 2 disponível ?

      Mauricio Magnani Jr respondido:
      12 de junho de 2013 às 20:22

      Oi Flaviano,

      Vou fazer a segunda parte ainda esse mês sem falta.

      Abs

    none disse:
    26 de agosto de 2013 às 21:26

    Cara, que tosco esse tutorial, o arquivo do servidor fica poluído com informações duplicadas e o log sai sempre no stdout….

      Mauricio Magnani Jr respondido:
      28 de agosto de 2013 às 21:54

      A idéia foi simplesmente mostrar como dar um no classloading… fique a vontade para criar um tutorial e passar o link que posto aqui.

      Abs

      Mauricio Magnani Jr respondido:
      28 de agosto de 2013 às 21:55

      ps: dar um exclusion..

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s