Put your log4j config in
conf/log4j.xml

Why do think it weird if jboss's logging goes where
you configured it?

Regards,
Adrian

On Mon, 2003-09-01 at 12:54, Paulo Bengero wrote:
> this is my wrapper class for Log4J:
> package com.uniserv.comn.logger;
> 
> import org.apache.log4j.*;
> import java.util.*;
> import java.io.*;
> 
> public class Logger
> {
> 
>   private static boolean isInstantiated;
>   private static Logger logger = null;
>   private Category posTxtFileLog;
>   private Category bosTxtFileLog;
>   private Category bosJdbcLog;
> 
>   /** class constants **/
>   public static final int DEBUG    = 0;
>   public static final int INFO     = 1;
>   public static final int WARN     = 2;
>   public static final int ERROR    = 3;
>   public static final int FATAL    = 4;
> 
>   private Logger()
>   {
>        posTxtFileLog = Category.getInstance( Logger.class.getName() + ".
>      POSTXTLOG" );
>        bosTxtFileLog = Category.getInstance( Logger.class.getName() + ".
>      BOSTXTLOG" );
>        bosJdbcLog      = Category.getInstance( Logger.class.getName() + ".
>     BOSJDBCLOG" );
>        Properties props = new Properties();
> 
>        try
>        {
>                   System.out.println("getting log4j.properties" );
>                      props.load(new BufferedInputStream(this.getClass().
>        getResourceAsStream("log4j.properties")));
>            PropertyConfigurator.configure(props);
>        }
>        catch (IOException ioe)
>        {
>               ioe.printStackTrace();
>        }
> 
>   }
> 
> 
>   public static Logger getInstance()
>   {
>        if ( logger == null )
>        {
>               logger = new Logger();
>        }
> 
>        return logger;
>   }
> 
>   public void logPOS( int iLevel, String message )
>   {
>        switch(iLevel)
>        {
>               case DEBUG:
>                      posTxtFileLog.debug(message);
>                      break;
>               case INFO:
>                      posTxtFileLog.info(message);
>                      break;
>               case WARN:
>                      posTxtFileLog.warn(message);
>                      break;
>               case ERROR:
>                      posTxtFileLog.error(message);
>                      break;
>               case FATAL:
>                      posTxtFileLog.fatal(message);
>                      break;
>        }
> 
>   }
> 
>   public void logBOS( int iLevel, String message )
>   {
> 
>        switch(iLevel)
>        {
>               case DEBUG:
>                      bosTxtFileLog.debug(message);
>                      bosJdbcLog.debug(message);
>                      break;
>               case INFO:
>                      bosTxtFileLog.info(message);
>                      bosJdbcLog.info(message);
>                      break;
>               case WARN:
>                      bosTxtFileLog.warn(message);
>                      bosJdbcLog.warn(message);
>                      break;
>               case ERROR:
>                      bosTxtFileLog.error(message);
>                      bosJdbcLog.error(message);
>                      break;
>               case FATAL:
>                      bosTxtFileLog.fatal(message);
>                      bosJdbcLog.fatal(message);
>                      break;
>        }
>   }
> 
> }
> 
> this is my log4j.properties
> #root category
> log4j.rootCategory=DEBUG, Appender2
> log4j.category.Logger.POSTXTLOG=DEBUG, Appender2
> log4j.category.Logger.BOSTXTLOG=DEBUG, Appender3
> log4j.category.Logger.BOSJDBCLOG=DEBUG, Appender4
> 
> # Appender1
> log4j.appender.Appender1=org.apache.log4j.ConsoleAppender
> log4j.appender.Appender1.layout=org.apache.log4j.PatternLayout
> log4j.appender.Appender1.layout.ConversionPattern=%d [%t] %-5p %m%n
> 
> # Appender2
> log4j.appender.Appender2=org.apache.log4j.FileAppender
> log4j.appender.Appender2.layout=org.apache.log4j.PatternLayout
> log4j.appender.Appender2.layout.ConversionPattern=%d [%t] %-5p %m%n
> log4j.appender.Appender2.File=F:\postxtlog.txt
> 
> # Appender3
> log4j.appender.Appender3=org.apache.log4j.FileAppender
> log4j.appender.Appender3.layout=org.apache.log4j.PatternLayout
> log4j.appender.Appender3.layout.ConversionPattern=%d [%t] %-5p %m%n
> log4j.appender.Appender3.File=F:\MyDocuments\LOG 4J Docu\Test Codes\bostxtlog.
> txt
> 
> # Appender4
> log4j.appender.Appender4=org.apache.log4j.jdbc.JDBCAppender
> log4j.appender.Appender4.URL=jdbc:postgresql://localhost:5432/testdb
> log4j.appender.Appender4.user=pau
> log4j.appender.Appender4.password=pau
> log4j.appender.Appender4.sql=INSERT INTO JDBCTEST (Message) VALUES ('%d - %c -
> %p - %m')
> 
> 
> the ejb that uses my logging class:
> 
> public class TimeKeepingSessionEJB implements SessionBean {
> 
> 
>     SessionContext ctx = null;
> 
>     EntityServices entityServices = new EntityServices();
> 
>     LocalTimeKeeping timeKeeping         = null;
>     LocalTimeKeepingHome timeKeepingHome = null;
> 
>     Logger logger = Logger.getInstance();
> 
>     /**
>       * Default constructor
>       */
>      public TimeKeepingSessionEJB() {
>      }
> 
>     public void ejbRemove() {}
>     public void ejbPassivate () {}
>     public void ejbActivate() {}
> 
>     /** A method requirement of session bean.*/
>     public void ejbCreate() throws CreateException {
>       try{
>         System.out.println("Inside ejbcreate:");
>         System.out.println("LOGGER OBJECT: " + logger );
>         logger.logPOS(Logger.DEBUG, "Inside ejbcreate() of
> TimeKeepingSessionEJB" );
>         ServiceLocator serviceLocator = ServiceLocator.getInstance();
>                 timeKeepingHome = (LocalTimeKeepingHome)
>                        serviceLocator.getLocalHome(entityServices.TIME_KEEPING);
>       } catch (Exception e) {
>           //      logger.logPOS(Logger.ERROR, "Exception @ ejbcreate(): " + e.
> getMessage() );
>             e.printStackTrace();
>       }
>     }
> 
>     /** A method requirement of session bean.*/
>     public void setSessionContext(SessionContext oSessionContext) {
>       this.ctx = oSessionContext;
>     }
> 
> /*********************for testing only*******************************/
>     public void getTimeKeeping() throws Exception {
>       try {
> 
>         Context context = new InitialContext();
>         Object objRef = context.lookup("java:comp/env/ejb/TimeKeepingEJB");
>         timeKeepingHome = (LocalTimeKeepingHome)
>                PortableRemoteObject.narrow(objRef, LocalTimeKeepingHome.class);
>       }
>       catch (Exception e) {
>         System.out.println("Error TimeKeepingSessionEJB");
>         e.printStackTrace();
>       }
>   }
> /*********************end of for testing only*******************************/
> 
> 
>  /**
>    * addTimeKeeping(TimeKeepingVO timeKeepingVO)
>    * @ param
>    *   TimeKeepingVO timeKeepingVO - Value Object for TimeKeeping.
>    */
>   public TimeKeepingVO addTimeKeeping(TimeKeepingVO timeKeepingVO) throws
> AddException {
> 
>      try {
> //         getTimeKeeping();
>        logger.logPOS(Logger.DEBUG, "addTimeKeeping: creating instance" );
>          timeKeepingHome.create(timeKeepingVO);
>          return timeKeepingVO;
> 
>      } catch (Exception e) {
>          e.printStackTrace();
>          throw new AddException(e.getMessage());
>      }
>   }
> 
> 
> How do i configure Log4j inside JBoss? i find it weird that after JBoss deploys
> my application and when i run it the logging at the console stops. Instead, the
> JBoss logging continues inside F:\postxtlog.txt (defined as the file appender#
> 2 above ) and the comments i put inside my own methods ( e.g.  logger.
> logPOS(Logger.DEBUG, "Inside ejbcreate() of TimeKeepingSessionEJB" ) ) were not
> reflected inside the said file.
> 
> ************************************
> Paulo A. Bengero
> Application Systems Engineer
> Team ORION
> ************************************
> 
> 
> ______________________________________________________________________
> 
> ------------------------------------------------------------------------
> 
> FPI Gateway Scanner scanned email-body and no virus found
> ------------------------------------------------------------------------



-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
JBoss-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to