O WebLogic possui um mecanismo de logging com vários recursos, inclusive internacionalização de mensagens de erro. Você pode encontrar informações de como configurar e utilizar de forma detalhada no seguinte endereço: http://download.oracle.com/docs/cd/E12840_01/wls/docs103/i18n/index.html.
O objetivo desse post é utilizar o NonCatalogLogger que é indicado para aplicações que não precisam de internacionalização de log ou para aplicações que executam em sua própria JVM.
Para utilizar NonCatalogLogger em aplicações é só instanciar ele passando uma string com a identificação para você localizar no log. Eu prefiro colocar o nome da classe. Algo do tipo: SuaClasse.class.getName(). Depois é só chamar os métodos para realizar o log: info, warning, error, debug, ..., para verificar todos os métodos consulte a API: http://download.oracle.com/docs/cd/E12840_01/wls/docs103/javadocs/weblogic/logging/NonCatalogLogger.html
Abaixo segue um exemplo de uso:
import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import weblogic.logging.NonCatalogLogger; public class TestServlet extends HttpServlet { private static final long serialVersionUID = 1L; private NonCatalogLogger logger = new NonCatalogLogger( TestServlet.class.getName()); public TestServlet() { super(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { try { logger.info("Acessei a servlet por get"); // Faça algo } catch (Exception e) { logger.error("Erro!", e); } } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { try { logger.info("Acessei a servlet por post"); // Faça algo } catch (Exception e) { logger.error("Erro!", e); } } }
Agora é só utilizar...