You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-user@logging.apache.org by sivamma <sk...@yahoo.co.in> on 2007/06/25 11:14:37 UTC

Urgent Please--How to create different log files with different property files in same webapplication

Hi,
  I have a requirement to create different log files in same application.Our
application will be used in a different web application.Even the other
application is using log4j.We have our own log4j configuration
property(WEB-INF/config.properties) file and separate log file in a
particular directory(WEB-INF/logs/xxx.log).

At present the problem is we are getting logs from other application to our
log file.
Our application(Giving  as jar files) is under other application.

For example our application is abc and others is xyz.

The directory structure is "webapps/xyz/WEB-INF" where it contains xyz's
log4j property file as well abc's log4j property file.abc's logs are
supposed to go "webappas/xyz/WEB-INF/logs/abc.log" and xyz's logs are
supposed to go different file(Which we dont know , exactly where it goes).
But at present xyz's logs are coming into abc's logs means , they are coming
into "webapps/xyz/WEB-INF/logs/abc.log"

Can you please tell me how can get logs only from my applicaiton(may not be
from my application..only from  my classes).

Its little urgent.
Thanks in advacne.
Regards,
Sivamma.
-- 
View this message in context: http://www.nabble.com/Urgent-Please--How-to-create-different-log-files-with-different-property-files-in-same-webapplication-tf3974952.html#a11283346
Sent from the Log4j - Users mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org


Re: Urgent Please--How to create different log files with different property files in same webapplication

Posted by James Stauffer <st...@gmail.com>.
Since JSPs are compiled into servlets you should be able to do almost
anything in a JSP that you can do in a servlet.

On 6/26/07, sivamma <sk...@yahoo.co.in> wrote:
>
> However i am not using Servlets to initialize the log4j.
> So Even to implement repository selector i am not using servlets.
> Our customers requested us to not use servlets.Since we made everything
> using Java and jsps.

-- 
James Stauffer        http://www.geocities.com/stauffer_james/
Are you good? Take the test at http://www.livingwaters.com/good/

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org


Re: Urgent Please--How to create different log files with different property files in same webapplication

Posted by sivamma <sk...@yahoo.co.in>.
Hi I tried to implement the repository selectors.But still problems occurs.
Please find my repository selector below.
However i am not using Servlets to initialize the log4j.
So Even to implement repository selector i am not using servlets.
Our customers requested us to not use servlets.Since we made everything
using Java and jsps.

==============================================================
package com.CK;
import java.io.InputStream;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.xml.parsers.DocumentBuilderFactory;
import org.apache.log4j.Hierarchy;
import org.apache.log4j.Level;
import org.apache.log4j.LogManager;
import org.apache.log4j.spi.LoggerRepository;
import org.apache.log4j.spi.RepositorySelector;
import org.apache.log4j.spi.RootCategory;
import java.io.File;
import org.apache.log4j.Logger;
import org.apache.log4j.Level;
import org.apache.log4j.PropertyConfigurator;
/**
 * This RepositorySelector is for use with web applications.  
 * It assumes that your log4j.xml file is in the WEB-INF directory.
 * @author  Stan Silvert
 */
public class Log4jSetup implements RepositorySelector
{
   private static boolean initialized = false;
   // This object is used for the guard because it doesn't get
   // recycled when the application is redeployed.
   private static Object guard = LogManager.getRootLogger();
   
   private static Map repositories = new HashMap();
   private static LoggerRepository defaultRepository;
   /**
    * Register your web-app with this repository selector.
    */
 public static String rPath = null;
 public Log4jSetup(String realPath)
 {
  rPath = realPath;
  //ServletConfig config;
  init();
 }
   public static synchronized void init() 
   {
   //String realPath =
getServletConfig().getServletContext().getRealPath("/");
   //rPath = realPath;
      if( !initialized ) // set the global RepositorySelector
      {
         defaultRepository = LogManager.getLoggerRepository();
         RepositorySelector theSelector = new Log4jSetup();
         LogManager.setRepositorySelector(theSelector, guard);
         initialized = true;
      }
      
      Hierarchy hierarchy = new Hierarchy(new
                                RootCategory(Level.DEBUG));
      loadLog4JConfig(hierarchy);
      ClassLoader loader = 
           Thread.currentThread().getContextClassLoader();
      repositories.put(loader, hierarchy);
   }
   // load config.properties from WEB-INF
   private static void loadLog4JConfig(Hierarchy hierarchy) 
   {
    try 
    {
   String filePath =
rPath+File.separator+"WEB-INF"+File.separator+"config.properties";
   String logfilePath =
rPath+File.separator+"WEB-INF"+File.separator+"logs"+File.separator;
   if( !(new File(filePath)).isFile())
   {
    System.err.println("ERROR:Log4jSetUp::Cannot read the Log4J
configuration file. " +
    "Please check the path of the config init param in web.xml");
   }
   System.setProperty("ck.base",logfilePath);
   PropertyConfigurator.configure(filePath);
    }
    catch (Exception e) 
    {
            System.err.println("Throws Exception::"+e.getMessage());
       }
    }
   private Log4jSetup() {
   }
   public LoggerRepository getLoggerRepository() {
      ClassLoader loader = 
             Thread.currentThread().getContextClassLoader();
      LoggerRepository repository = 
            (LoggerRepository)repositories.get(loader);
      
      if (repository == null) {
          return defaultRepository;
      } else {
          return repository;
      }
   }
}
=========================================================
Can you please tell me whats wrong with the code.Is there any other way to
handle this?.
Thanks & Regards,
Sivamma.


Search the mailing list archives.  I have never used them -- I am just
somewhat familiar with what they do.

-- 
View this message in context: http://www.nabble.com/Urgent-Please--How-to-create-different-log-files-with-different-property-files-in-same-webapplication-tf3974952.html#a11302960
Sent from the Log4j - Users mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org


Re: Urgent Please--How to create different log files with different property files in same webapplication

Posted by James Stauffer <st...@gmail.com>.
Search the mailing list archives.  I have never used them -- I am just
somewhat familiar with what they do.

On 6/25/07, sivamma <sk...@yahoo.co.in> wrote:
>
> Can you please explain me more.How to implement repository selectors.Please
> send me some examples.
> I tried to find in FAQs and some docs.But its not clear to me.
>
> Thanks & Regards,
> Sivamma.
>
>
> So does only your customer have the problem of mixed logs?  It sounds
> like they just need to change their config if they don't want mixed
> logs.
>
> But knowing how customers can be repository selectors might keep the
> logs separate without the customer changing their config.
>
>
> --
> View this message in context: http://www.nabble.com/Urgent-Please--How-to-create-different-log-files-with-different-property-files-in-same-webapplication-tf3974952.html#a11288789
> Sent from the Log4j - Users mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
> For additional commands, e-mail: log4j-user-help@logging.apache.org
>
>


-- 
James Stauffer        http://www.geocities.com/stauffer_james/
Are you good? Take the test at http://www.livingwaters.com/good/

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org


Re: Urgent Please--How to create different log files with different property files in same webapplication

Posted by sivamma <sk...@yahoo.co.in>.
Can you please explain me more.How to implement repository selectors.Please
send me some examples.
I tried to find in FAQs and some docs.But its not clear to me.

Thanks & Regards,
Sivamma.


So does only your customer have the problem of mixed logs?  It sounds
like they just need to change their config if they don't want mixed
logs.

But knowing how customers can be repository selectors might keep the
logs separate without the customer changing their config.


-- 
View this message in context: http://www.nabble.com/Urgent-Please--How-to-create-different-log-files-with-different-property-files-in-same-webapplication-tf3974952.html#a11288789
Sent from the Log4j - Users mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org


Re: Urgent Please--How to create different log files with different property files in same webapplication

Posted by James Stauffer <st...@gmail.com>.
So does only your customer have the problem of mixed logs?  It sounds
like they just need to change their config if they don't want mixed
logs.

But knowing how customers can be repository selectors might keep the
logs separate without the customer changing their config.

On 6/25/07, sivamma <sk...@yahoo.co.in> wrote:
>
> Yes thats true.
> xyz uses abc as a library and abc runs by itself.
>
>
> Can you better explain the relationship between abc and xyz?  It
> sounds like xyz uses abc as a library and that abc also runs by
> itself.
>
> --
> View this message in context: http://www.nabble.com/Urgent-Please--How-to-create-different-log-files-with-different-property-files-in-same-webapplication-tf3974952.html#a11287148
> Sent from the Log4j - Users mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
> For additional commands, e-mail: log4j-user-help@logging.apache.org
>
>


-- 
James Stauffer        http://www.geocities.com/stauffer_james/
Are you good? Take the test at http://www.livingwaters.com/good/

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org


Re: Urgent Please--How to create different log files with different property files in same webapplication

Posted by sivamma <sk...@yahoo.co.in>.
Yes thats true.
xyz uses abc as a library and abc runs by itself.


Can you better explain the relationship between abc and xyz?  It
sounds like xyz uses abc as a library and that abc also runs by
itself.

-- 
View this message in context: http://www.nabble.com/Urgent-Please--How-to-create-different-log-files-with-different-property-files-in-same-webapplication-tf3974952.html#a11287148
Sent from the Log4j - Users mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org


Re: Urgent Please--How to create different log files with different property files in same webapplication

Posted by James Stauffer <st...@gmail.com>.
Can you better explain the relationship between abc and xyz?  It
sounds like xyz uses abc as a library and that abc also runs by
itself.

Repository selectors might help.

On 6/25/07, sivamma <sk...@yahoo.co.in> wrote:
>
> We dont know exactly how log4j is handled at XYZ(They are our customers).But
> in abc , we are referring a config file through our code.
>
> Please find our java code.
> ==================================================================
> package com.CK;
>
>
> import java.io.File;
>
> import org.apache.log4j.Logger;
> import org.apache.log4j.Level;
> import org.apache.log4j.PropertyConfigurator;
>
> public class Log4jSetup
> {
>         public static String rPath = null;
>         public Log4jSetup(String realPath)
>         {
>                 rPath = realPath;
>         }
>         public Log4jSetup()
>         {
>                 String filePath =
> rPath+File.separator+"WEB-INF"+File.separator+"config.properties";
>                 String logfilePath =
> rPath+File.separator+"WEB-INF"+File.separator+"logs"+File.separator;
>                 if( !(new File(filePath)).isFile())
>                 {
>                         System.err.println("[CK]ERROR:Log4jSetUp::Cannot read the Log4J
> configuration file. " );
>                 }
>                 System.setProperty("ck.base",logfilePath);
>
>                 PropertyConfigurator.configure(filePath);
>                 Logger log = Logger.getLogger(Log4jSetup.class);
>         }
> }
> =========================================================================
>
>
> Thanks & Regards,
> Sivamma.
>
> James Stauffer wrote:
> >
> > How exactly is log4j configured from abc and xyz?  Directly through
> > code? Code referencing a config file?  log4j automatically finding a
> > config file?
> >
> > On 6/25/07, sivamma <sk...@yahoo.co.in> wrote:
> >>
> >> Hi, Thank you for immediate reply.
> >> The problem is little different here.XYZ and abc are in same
> >> application.XYZ
> >> is using abc's jar files and jsps.
> >> Our application(abc) have our own log4j configuration property file at
> >> WEB-INF folder of XYZ(WEB-INF is common for both of XYZ and abc).
> >> We are configuring log4j from java class file.We can not
> >> add/modify/delete
> >> XYZ's log4j configuration property file.At present we are getting even
> >> the
> >> XYZ's logs in our log files.
> >>
> >> Please find our log4j configuration(abc's)
> >>
> >> log4j.appender.mail.layout=org.apache.log4j.PatternLayout
> >> log4j.appender.mail.From=skempili@abc.com
> >> log4j.appender.mail=org.apache.log4j.net.SMTPAppender
> >> log4j.appender.mail.SMTPPassword=xxxxxx
> >> log4j.appender.mail.BufferSize=512
> >> log4j.appender.R.layout.ConversionPattern=%d{yyyy MMM dd HH\:mm\:ss} --
> >> %p
> >> -- %m%n
> >> log4j.appender.mail.evaluatorClass=com.CK.Evaluator
> >> log4j.appender.mail.SMTPUsername=siva
> >> log4j.appender.R.File=${ck.base}ck_logs.log
> >> log4j.rootCategory=debug, R,mail
> >> log4j.appender.mail.To=skempili@abc.com
> >> log4j.appender.R.MaxBackupIndex=10
> >> log4j.appender.R=org.apache.log4j.RollingFileAppender
> >> log4j.appender.mail.Threshold=WARN
> >> log4j.appender.mail.layout.ConversionPattern=%d{yyyy MMM dd HH\:mm\:ss}
> >> --
> >> %p -- %m%n
> >> log4j.appender.R.layout=org.apache.log4j.PatternLayout
> >> log4j.appender.R.MaxFileSize=100KB
> >> log4j.appender.mail.Subject=\=[SMTPAppender] Application message
> >> log4j.appender.mail.SMTPHost=mail.abc.com
> >>
> >> It(abc) works fine as a single application in tomcat6.
> >> But when XYZ starts using abc the problem occurs(XYZ is using Weblogic
> >> Application server).
> >>
> >> Is there way to get separate the logs in a same application with
> >> different
> >> log4j configuration property files.
> >>
> >> Thanks & Regards,
> >> Sivamma
> >>
> >>
> >> James Stauffer wrote:
> >> >
> >> > If xyz and abc are different web apps then moving log4j.jar and
> >> > log4j.xml from common to WEB-INF/lib should keep the logs separate.
> >> > If they are in the same web app then they probably have different
> >> > logger name roots so you can configure each to use a different
> >> > appender. (i.e com.abc uses one appender and com.xyz uses another
> >> > appender).
> >> >
> >> > On 6/25/07, sivamma <sk...@yahoo.co.in> wrote:
> >> >>
> >> >> Hi,
> >> >>   I have a requirement to create different log files in same
> >> >> application.Our
> >> >> application will be used in a different web application.Even the other
> >> >> application is using log4j.We have our own log4j configuration
> >> >> property(WEB-INF/config.properties) file and separate log file in a
> >> >> particular directory(WEB-INF/logs/xxx.log).
> >> >>
> >> >> At present the problem is we are getting logs from other application
> >> to
> >> >> our
> >> >> log file.
> >> >> Our application(Giving  as jar files) is under other application.
> >> >>
> >> >> For example our application is abc and others is xyz.
> >> >>
> >> >> The directory structure is "webapps/xyz/WEB-INF" where it contains
> >> xyz's
> >> >> log4j property file as well abc's log4j property file.abc's logs are
> >> >> supposed to go "webappas/xyz/WEB-INF/logs/abc.log" and xyz's logs are
> >> >> supposed to go different file(Which we dont know , exactly where it
> >> >> goes).
> >> >> But at present xyz's logs are coming into abc's logs means , they are
> >> >> coming
> >> >> into "webapps/xyz/WEB-INF/logs/abc.log"
> >> >>
> >> >> Can you please tell me how can get logs only from my applicaiton(may
> >> not
> >> >> be
> >> >> from my application..only from  my classes).
> >> >>
> >> >> Its little urgent.
> >> >> Thanks in advacne.
> >> >> Regards,
> >> >> Sivamma.
> >> >> --
> >> >> View this message in context:
> >> >>
> >> http://www.nabble.com/Urgent-Please--How-to-create-different-log-files-with-different-property-files-in-same-webapplication-tf3974952.html#a11283346
> >> >> Sent from the Log4j - Users mailing list archive at Nabble.com.
> >> >>
> >> >>
> >> >> ---------------------------------------------------------------------
> >> >> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
> >> >> For additional commands, e-mail: log4j-user-help@logging.apache.org
> >> >>
> >> >>
> >> >
> >> >
> >> > --
> >> > James Stauffer        http://www.geocities.com/stauffer_james/
> >> > Are you good? Take the test at http://www.livingwaters.com/good/
> >> >
> >> > ---------------------------------------------------------------------
> >> > To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
> >> > For additional commands, e-mail: log4j-user-help@logging.apache.org
> >> >
> >> >
> >> >
> >>
> >> --
> >> View this message in context:
> >> http://www.nabble.com/Urgent-Please--How-to-create-different-log-files-with-different-property-files-in-same-webapplication-tf3974952.html#a11286397
> >> Sent from the Log4j - Users mailing list archive at Nabble.com.
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
> >> For additional commands, e-mail: log4j-user-help@logging.apache.org
> >>
> >>
> >
> >
> > --
> > James Stauffer        http://www.geocities.com/stauffer_james/
> > Are you good? Take the test at http://www.livingwaters.com/good/
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
> > For additional commands, e-mail: log4j-user-help@logging.apache.org
> >
> >
> >
>
> --
> View this message in context: http://www.nabble.com/Urgent-Please--How-to-create-different-log-files-with-different-property-files-in-same-webapplication-tf3974952.html#a11286750
> Sent from the Log4j - Users mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
> For additional commands, e-mail: log4j-user-help@logging.apache.org
>
>


-- 
James Stauffer        http://www.geocities.com/stauffer_james/
Are you good? Take the test at http://www.livingwaters.com/good/

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org


Re: Urgent Please--How to create different log files with different property files in same webapplication

Posted by sivamma <sk...@yahoo.co.in>.
We dont know exactly how log4j is handled at XYZ(They are our customers).But
in abc , we are referring a config file through our code.

Please find our java code.
==================================================================
package com.CK;


import java.io.File;

import org.apache.log4j.Logger;
import org.apache.log4j.Level;
import org.apache.log4j.PropertyConfigurator;

public class Log4jSetup
{
	public static String rPath = null;
	public Log4jSetup(String realPath)
	{
		rPath = realPath;
	}
	public Log4jSetup()
	{
		String filePath =
rPath+File.separator+"WEB-INF"+File.separator+"config.properties";
		String logfilePath =
rPath+File.separator+"WEB-INF"+File.separator+"logs"+File.separator;
		if( !(new File(filePath)).isFile())
		{
			System.err.println("[CK]ERROR:Log4jSetUp::Cannot read the Log4J
configuration file. " );
		}
		System.setProperty("ck.base",logfilePath);

		PropertyConfigurator.configure(filePath);
		Logger log = Logger.getLogger(Log4jSetup.class);
	}
}
=========================================================================


Thanks & Regards,
Sivamma.

James Stauffer wrote:
> 
> How exactly is log4j configured from abc and xyz?  Directly through
> code? Code referencing a config file?  log4j automatically finding a
> config file?
> 
> On 6/25/07, sivamma <sk...@yahoo.co.in> wrote:
>>
>> Hi, Thank you for immediate reply.
>> The problem is little different here.XYZ and abc are in same
>> application.XYZ
>> is using abc's jar files and jsps.
>> Our application(abc) have our own log4j configuration property file at
>> WEB-INF folder of XYZ(WEB-INF is common for both of XYZ and abc).
>> We are configuring log4j from java class file.We can not
>> add/modify/delete
>> XYZ's log4j configuration property file.At present we are getting even
>> the
>> XYZ's logs in our log files.
>>
>> Please find our log4j configuration(abc's)
>>
>> log4j.appender.mail.layout=org.apache.log4j.PatternLayout
>> log4j.appender.mail.From=skempili@abc.com
>> log4j.appender.mail=org.apache.log4j.net.SMTPAppender
>> log4j.appender.mail.SMTPPassword=xxxxxx
>> log4j.appender.mail.BufferSize=512
>> log4j.appender.R.layout.ConversionPattern=%d{yyyy MMM dd HH\:mm\:ss} --
>> %p
>> -- %m%n
>> log4j.appender.mail.evaluatorClass=com.CK.Evaluator
>> log4j.appender.mail.SMTPUsername=siva
>> log4j.appender.R.File=${ck.base}ck_logs.log
>> log4j.rootCategory=debug, R,mail
>> log4j.appender.mail.To=skempili@abc.com
>> log4j.appender.R.MaxBackupIndex=10
>> log4j.appender.R=org.apache.log4j.RollingFileAppender
>> log4j.appender.mail.Threshold=WARN
>> log4j.appender.mail.layout.ConversionPattern=%d{yyyy MMM dd HH\:mm\:ss}
>> --
>> %p -- %m%n
>> log4j.appender.R.layout=org.apache.log4j.PatternLayout
>> log4j.appender.R.MaxFileSize=100KB
>> log4j.appender.mail.Subject=\=[SMTPAppender] Application message
>> log4j.appender.mail.SMTPHost=mail.abc.com
>>
>> It(abc) works fine as a single application in tomcat6.
>> But when XYZ starts using abc the problem occurs(XYZ is using Weblogic
>> Application server).
>>
>> Is there way to get separate the logs in a same application with
>> different
>> log4j configuration property files.
>>
>> Thanks & Regards,
>> Sivamma
>>
>>
>> James Stauffer wrote:
>> >
>> > If xyz and abc are different web apps then moving log4j.jar and
>> > log4j.xml from common to WEB-INF/lib should keep the logs separate.
>> > If they are in the same web app then they probably have different
>> > logger name roots so you can configure each to use a different
>> > appender. (i.e com.abc uses one appender and com.xyz uses another
>> > appender).
>> >
>> > On 6/25/07, sivamma <sk...@yahoo.co.in> wrote:
>> >>
>> >> Hi,
>> >>   I have a requirement to create different log files in same
>> >> application.Our
>> >> application will be used in a different web application.Even the other
>> >> application is using log4j.We have our own log4j configuration
>> >> property(WEB-INF/config.properties) file and separate log file in a
>> >> particular directory(WEB-INF/logs/xxx.log).
>> >>
>> >> At present the problem is we are getting logs from other application
>> to
>> >> our
>> >> log file.
>> >> Our application(Giving  as jar files) is under other application.
>> >>
>> >> For example our application is abc and others is xyz.
>> >>
>> >> The directory structure is "webapps/xyz/WEB-INF" where it contains
>> xyz's
>> >> log4j property file as well abc's log4j property file.abc's logs are
>> >> supposed to go "webappas/xyz/WEB-INF/logs/abc.log" and xyz's logs are
>> >> supposed to go different file(Which we dont know , exactly where it
>> >> goes).
>> >> But at present xyz's logs are coming into abc's logs means , they are
>> >> coming
>> >> into "webapps/xyz/WEB-INF/logs/abc.log"
>> >>
>> >> Can you please tell me how can get logs only from my applicaiton(may
>> not
>> >> be
>> >> from my application..only from  my classes).
>> >>
>> >> Its little urgent.
>> >> Thanks in advacne.
>> >> Regards,
>> >> Sivamma.
>> >> --
>> >> View this message in context:
>> >>
>> http://www.nabble.com/Urgent-Please--How-to-create-different-log-files-with-different-property-files-in-same-webapplication-tf3974952.html#a11283346
>> >> Sent from the Log4j - Users mailing list archive at Nabble.com.
>> >>
>> >>
>> >> ---------------------------------------------------------------------
>> >> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
>> >> For additional commands, e-mail: log4j-user-help@logging.apache.org
>> >>
>> >>
>> >
>> >
>> > --
>> > James Stauffer        http://www.geocities.com/stauffer_james/
>> > Are you good? Take the test at http://www.livingwaters.com/good/
>> >
>> > ---------------------------------------------------------------------
>> > To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
>> > For additional commands, e-mail: log4j-user-help@logging.apache.org
>> >
>> >
>> >
>>
>> --
>> View this message in context:
>> http://www.nabble.com/Urgent-Please--How-to-create-different-log-files-with-different-property-files-in-same-webapplication-tf3974952.html#a11286397
>> Sent from the Log4j - Users mailing list archive at Nabble.com.
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
>> For additional commands, e-mail: log4j-user-help@logging.apache.org
>>
>>
> 
> 
> -- 
> James Stauffer        http://www.geocities.com/stauffer_james/
> Are you good? Take the test at http://www.livingwaters.com/good/
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
> For additional commands, e-mail: log4j-user-help@logging.apache.org
> 
> 
> 

-- 
View this message in context: http://www.nabble.com/Urgent-Please--How-to-create-different-log-files-with-different-property-files-in-same-webapplication-tf3974952.html#a11286750
Sent from the Log4j - Users mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org


Re: Urgent Please--How to create different log files with different property files in same webapplication

Posted by James Stauffer <st...@gmail.com>.
How exactly is log4j configured from abc and xyz?  Directly through
code? Code referencing a config file?  log4j automatically finding a
config file?

On 6/25/07, sivamma <sk...@yahoo.co.in> wrote:
>
> Hi, Thank you for immediate reply.
> The problem is little different here.XYZ and abc are in same application.XYZ
> is using abc's jar files and jsps.
> Our application(abc) have our own log4j configuration property file at
> WEB-INF folder of XYZ(WEB-INF is common for both of XYZ and abc).
> We are configuring log4j from java class file.We can not add/modify/delete
> XYZ's log4j configuration property file.At present we are getting even the
> XYZ's logs in our log files.
>
> Please find our log4j configuration(abc's)
>
> log4j.appender.mail.layout=org.apache.log4j.PatternLayout
> log4j.appender.mail.From=skempili@abc.com
> log4j.appender.mail=org.apache.log4j.net.SMTPAppender
> log4j.appender.mail.SMTPPassword=xxxxxx
> log4j.appender.mail.BufferSize=512
> log4j.appender.R.layout.ConversionPattern=%d{yyyy MMM dd HH\:mm\:ss} -- %p
> -- %m%n
> log4j.appender.mail.evaluatorClass=com.CK.Evaluator
> log4j.appender.mail.SMTPUsername=siva
> log4j.appender.R.File=${ck.base}ck_logs.log
> log4j.rootCategory=debug, R,mail
> log4j.appender.mail.To=skempili@abc.com
> log4j.appender.R.MaxBackupIndex=10
> log4j.appender.R=org.apache.log4j.RollingFileAppender
> log4j.appender.mail.Threshold=WARN
> log4j.appender.mail.layout.ConversionPattern=%d{yyyy MMM dd HH\:mm\:ss} --
> %p -- %m%n
> log4j.appender.R.layout=org.apache.log4j.PatternLayout
> log4j.appender.R.MaxFileSize=100KB
> log4j.appender.mail.Subject=\=[SMTPAppender] Application message
> log4j.appender.mail.SMTPHost=mail.abc.com
>
> It(abc) works fine as a single application in tomcat6.
> But when XYZ starts using abc the problem occurs(XYZ is using Weblogic
> Application server).
>
> Is there way to get separate the logs in a same application with different
> log4j configuration property files.
>
> Thanks & Regards,
> Sivamma
>
>
> James Stauffer wrote:
> >
> > If xyz and abc are different web apps then moving log4j.jar and
> > log4j.xml from common to WEB-INF/lib should keep the logs separate.
> > If they are in the same web app then they probably have different
> > logger name roots so you can configure each to use a different
> > appender. (i.e com.abc uses one appender and com.xyz uses another
> > appender).
> >
> > On 6/25/07, sivamma <sk...@yahoo.co.in> wrote:
> >>
> >> Hi,
> >>   I have a requirement to create different log files in same
> >> application.Our
> >> application will be used in a different web application.Even the other
> >> application is using log4j.We have our own log4j configuration
> >> property(WEB-INF/config.properties) file and separate log file in a
> >> particular directory(WEB-INF/logs/xxx.log).
> >>
> >> At present the problem is we are getting logs from other application to
> >> our
> >> log file.
> >> Our application(Giving  as jar files) is under other application.
> >>
> >> For example our application is abc and others is xyz.
> >>
> >> The directory structure is "webapps/xyz/WEB-INF" where it contains xyz's
> >> log4j property file as well abc's log4j property file.abc's logs are
> >> supposed to go "webappas/xyz/WEB-INF/logs/abc.log" and xyz's logs are
> >> supposed to go different file(Which we dont know , exactly where it
> >> goes).
> >> But at present xyz's logs are coming into abc's logs means , they are
> >> coming
> >> into "webapps/xyz/WEB-INF/logs/abc.log"
> >>
> >> Can you please tell me how can get logs only from my applicaiton(may not
> >> be
> >> from my application..only from  my classes).
> >>
> >> Its little urgent.
> >> Thanks in advacne.
> >> Regards,
> >> Sivamma.
> >> --
> >> View this message in context:
> >> http://www.nabble.com/Urgent-Please--How-to-create-different-log-files-with-different-property-files-in-same-webapplication-tf3974952.html#a11283346
> >> Sent from the Log4j - Users mailing list archive at Nabble.com.
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
> >> For additional commands, e-mail: log4j-user-help@logging.apache.org
> >>
> >>
> >
> >
> > --
> > James Stauffer        http://www.geocities.com/stauffer_james/
> > Are you good? Take the test at http://www.livingwaters.com/good/
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
> > For additional commands, e-mail: log4j-user-help@logging.apache.org
> >
> >
> >
>
> --
> View this message in context: http://www.nabble.com/Urgent-Please--How-to-create-different-log-files-with-different-property-files-in-same-webapplication-tf3974952.html#a11286397
> Sent from the Log4j - Users mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
> For additional commands, e-mail: log4j-user-help@logging.apache.org
>
>


-- 
James Stauffer        http://www.geocities.com/stauffer_james/
Are you good? Take the test at http://www.livingwaters.com/good/

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org


Re: Urgent Please--How to create different log files with different property files in same webapplication

Posted by sivamma <sk...@yahoo.co.in>.
Hi, Thank you for immediate reply.
The problem is little different here.XYZ and abc are in same application.XYZ
is using abc's jar files and jsps.
Our application(abc) have our own log4j configuration property file at
WEB-INF folder of XYZ(WEB-INF is common for both of XYZ and abc).
We are configuring log4j from java class file.We can not add/modify/delete
XYZ's log4j configuration property file.At present we are getting even the
XYZ's logs in our log files.

Please find our log4j configuration(abc's)

log4j.appender.mail.layout=org.apache.log4j.PatternLayout
log4j.appender.mail.From=skempili@abc.com
log4j.appender.mail=org.apache.log4j.net.SMTPAppender
log4j.appender.mail.SMTPPassword=xxxxxx
log4j.appender.mail.BufferSize=512
log4j.appender.R.layout.ConversionPattern=%d{yyyy MMM dd HH\:mm\:ss} -- %p
-- %m%n
log4j.appender.mail.evaluatorClass=com.CK.Evaluator
log4j.appender.mail.SMTPUsername=siva
log4j.appender.R.File=${ck.base}ck_logs.log
log4j.rootCategory=debug, R,mail
log4j.appender.mail.To=skempili@abc.com
log4j.appender.R.MaxBackupIndex=10
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.mail.Threshold=WARN
log4j.appender.mail.layout.ConversionPattern=%d{yyyy MMM dd HH\:mm\:ss} --
%p -- %m%n
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.MaxFileSize=100KB
log4j.appender.mail.Subject=\=[SMTPAppender] Application message
log4j.appender.mail.SMTPHost=mail.abc.com

It(abc) works fine as a single application in tomcat6.
But when XYZ starts using abc the problem occurs(XYZ is using Weblogic
Application server).

Is there way to get separate the logs in a same application with different
log4j configuration property files.

Thanks & Regards,
Sivamma


James Stauffer wrote:
> 
> If xyz and abc are different web apps then moving log4j.jar and
> log4j.xml from common to WEB-INF/lib should keep the logs separate.
> If they are in the same web app then they probably have different
> logger name roots so you can configure each to use a different
> appender. (i.e com.abc uses one appender and com.xyz uses another
> appender).
> 
> On 6/25/07, sivamma <sk...@yahoo.co.in> wrote:
>>
>> Hi,
>>   I have a requirement to create different log files in same
>> application.Our
>> application will be used in a different web application.Even the other
>> application is using log4j.We have our own log4j configuration
>> property(WEB-INF/config.properties) file and separate log file in a
>> particular directory(WEB-INF/logs/xxx.log).
>>
>> At present the problem is we are getting logs from other application to
>> our
>> log file.
>> Our application(Giving  as jar files) is under other application.
>>
>> For example our application is abc and others is xyz.
>>
>> The directory structure is "webapps/xyz/WEB-INF" where it contains xyz's
>> log4j property file as well abc's log4j property file.abc's logs are
>> supposed to go "webappas/xyz/WEB-INF/logs/abc.log" and xyz's logs are
>> supposed to go different file(Which we dont know , exactly where it
>> goes).
>> But at present xyz's logs are coming into abc's logs means , they are
>> coming
>> into "webapps/xyz/WEB-INF/logs/abc.log"
>>
>> Can you please tell me how can get logs only from my applicaiton(may not
>> be
>> from my application..only from  my classes).
>>
>> Its little urgent.
>> Thanks in advacne.
>> Regards,
>> Sivamma.
>> --
>> View this message in context:
>> http://www.nabble.com/Urgent-Please--How-to-create-different-log-files-with-different-property-files-in-same-webapplication-tf3974952.html#a11283346
>> Sent from the Log4j - Users mailing list archive at Nabble.com.
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
>> For additional commands, e-mail: log4j-user-help@logging.apache.org
>>
>>
> 
> 
> -- 
> James Stauffer        http://www.geocities.com/stauffer_james/
> Are you good? Take the test at http://www.livingwaters.com/good/
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
> For additional commands, e-mail: log4j-user-help@logging.apache.org
> 
> 
> 

-- 
View this message in context: http://www.nabble.com/Urgent-Please--How-to-create-different-log-files-with-different-property-files-in-same-webapplication-tf3974952.html#a11286397
Sent from the Log4j - Users mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org


Re: Urgent Please--How to create different log files with different property files in same webapplication

Posted by James Stauffer <st...@gmail.com>.
If xyz and abc are different web apps then moving log4j.jar and
log4j.xml from common to WEB-INF/lib should keep the logs separate.
If they are in the same web app then they probably have different
logger name roots so you can configure each to use a different
appender. (i.e com.abc uses one appender and com.xyz uses another
appender).

On 6/25/07, sivamma <sk...@yahoo.co.in> wrote:
>
> Hi,
>   I have a requirement to create different log files in same application.Our
> application will be used in a different web application.Even the other
> application is using log4j.We have our own log4j configuration
> property(WEB-INF/config.properties) file and separate log file in a
> particular directory(WEB-INF/logs/xxx.log).
>
> At present the problem is we are getting logs from other application to our
> log file.
> Our application(Giving  as jar files) is under other application.
>
> For example our application is abc and others is xyz.
>
> The directory structure is "webapps/xyz/WEB-INF" where it contains xyz's
> log4j property file as well abc's log4j property file.abc's logs are
> supposed to go "webappas/xyz/WEB-INF/logs/abc.log" and xyz's logs are
> supposed to go different file(Which we dont know , exactly where it goes).
> But at present xyz's logs are coming into abc's logs means , they are coming
> into "webapps/xyz/WEB-INF/logs/abc.log"
>
> Can you please tell me how can get logs only from my applicaiton(may not be
> from my application..only from  my classes).
>
> Its little urgent.
> Thanks in advacne.
> Regards,
> Sivamma.
> --
> View this message in context: http://www.nabble.com/Urgent-Please--How-to-create-different-log-files-with-different-property-files-in-same-webapplication-tf3974952.html#a11283346
> Sent from the Log4j - Users mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
> For additional commands, e-mail: log4j-user-help@logging.apache.org
>
>


-- 
James Stauffer        http://www.geocities.com/stauffer_james/
Are you good? Take the test at http://www.livingwaters.com/good/

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org


RE: Re: Urgent Please--How to create different log files with different property files in same webapplication

Posted by sivamma <sk...@yahoo.co.in>.
Hi,
 Thank You So much.
I am not very clear about repositoryselectors.I tried to check some examples
and tried to implement.
Our application will be used by others as a library.We will provide jsps
,jar files  and some property files including log4j property file.

All our property files will be under WEB-INF of their(XYZ's) web
application.And our(abc's) jar files will be under their WEB-INF/lib.JSPs
under XYZ/abc/*.jsp's.
We are creating logs under WEB-INF/logs/abc.log

We dont have access to XYZ's log4j config file.So we cant include
loggers.What ever the changes, has to be made from our(abc) side only.I have
already sent our log4j config file.I am new to log4j also.Please let me know
if something can be done in our log4j config file.

Can you please explain me how can i handle repository selectors for this
problem.I am not able to find good examples also.

Thanks & Regards,
Sivamma.

-- 
View this message in context: http://www.nabble.com/Urgent-Please--How-to-create-different-log-files-with-different-property-files-in-same-webapplication-tf3974952.html#a11317767
Sent from the Log4j - Users mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org


RE: Re: Urgent Please--How to create different log files with different property files in same webapplication

Posted by sivamma <sk...@yahoo.co.in>.
Hi, 
 Thank You So much. 
I am not very clear about repositoryselectors.I tried to check some examples
and tried to implement. 
Our application will be used by others as a library.We will provide jsps
,jar files  and some property files including log4j property file. 

All our property files will be under WEB-INF of their(XYZ's) web
application.And our(abc's) jar files will be under their WEB-INF/lib.JSPs
under XYZ/abc/*.jsp's. 
We are creating logs under WEB-INF/logs/abc.log 

We dont have access to XYZ's log4j config file.So we cant include
loggers.What ever the changes, has to be made from our(abc) side only.I have
already sent our log4j config file.I am new to log4j also.Please let me know
if something can be done in our log4j config file. 

Can you please explain me how can i handle repository selectors for this
problem.I am not able to find good examples also. 

Thanks & Regards, 
Sivamma. 



Bender Heri wrote:
> 
> Your Implementation of repository selector is quite useless, because your
> distinction criteria relies on the current classloader. Log4j's default
> repository selector does this already for you. It is a singleton within
> the scope of one distinct classloader. If annother classloader comes onto
> stage there will be created a new repository selector automatically. So
> each classloader context has its own separate logger universe which can be
> configured independently (i.e. each different WEB-INF app in Tomcat has
> its own classloader).
> 
> A custom RepositorySelector has it's benefits if you can extract at a
> given time in code execution a unique criteria . This might differ when
> the same code is executed again (i.e. might be the user id of the logged
> in user, or others). How to establish this criteria is very dependent on
> the architecture of your application and your goal of separating the log
> outputs.
> 
> I reviewd your mail-thread and I must admit I don't quite understand the
> relationship of your two applications abc and xyz. Nor do I understand
> which log statements you wish to be written to the one log file and which
> one to the other. If the distinction only relies on the code spot where
> the log output is generated then the best approach would be to define
> separate Loggers for your own classes (like james already mentioned), name
> them by the fully qualified classname and set the additivity flag to
> false. Like that log outputs issued by the classes of xyz app never reach
> the appenders of the classes of abc app and vice versa.
> 
> But be aware: You cannot configure the same LogManager twice and hope the
> second configuration adds to the first one. The second configuration
> action will purge the first one before configuring new. But you can create
> new Loggers and Appenders by code and add them to the first loaded
> configuration. 
> 
> To give more precise advices you must explain more about the architecture
> of your applications.
> 
> Heri
> 
> 
>> -----Original Message-----
>> From: sivamma [mailto:skempili@yahoo.co.in]
>> Sent: Tuesday, June 26, 2007 12:12 PM
>> To: log4j-user@logging.apache.org
>> Subject: [SPAM (Keyword Checking)] - Re: Urgent Please--How to create
>> different log files with different property files in same 
>> webapplication
>> - Found word(s) list error in the Text body
>> 
>> 
>> 
>> Hi I tried to implement the repository selectors.But still 
>> problems occurs.
>> Please find my repository selector below.
>> However i am not using Servlets to initialize the log4j.
>> So Even to implement repository selector i am not using servlets.
>> Our customers requested us to not use servlets.Since we made 
>> everything
>> using Java and jsps.
>> 
>> ==============================================================
>> package com.CK;
>> import java.io.InputStream;
>> import java.util.HashMap;
>> import java.util.Map;
>> import javax.servlet.ServletConfig;
>> import javax.servlet.ServletException;
>> import javax.xml.parsers.DocumentBuilderFactory;
>> import org.apache.log4j.Hierarchy;
>> import org.apache.log4j.Level;
>> import org.apache.log4j.LogManager;
>> import org.apache.log4j.spi.LoggerRepository;
>> import org.apache.log4j.spi.RepositorySelector;
>> import org.apache.log4j.spi.RootCategory;
>> import java.io.File;
>> import org.apache.log4j.Logger;
>> import org.apache.log4j.Level;
>> import org.apache.log4j.PropertyConfigurator;
>> /**
>>  * This RepositorySelector is for use with web applications.  
>>  * It assumes that your log4j.xml file is in the WEB-INF directory.
>>  * @author  Stan Silvert
>>  */
>> public class Log4jSetup implements RepositorySelector
>> {
>>    private static boolean initialized = false;
>>    // This object is used for the guard because it doesn't get
>>    // recycled when the application is redeployed.
>>    private static Object guard = LogManager.getRootLogger();
>>    
>>    private static Map repositories = new HashMap();
>>    private static LoggerRepository defaultRepository;
>>    /**
>>     * Register your web-app with this repository selector.
>>     */
>>  public static String rPath = null;
>>  public Log4jSetup(String realPath)
>>  {
>>   rPath = realPath;
>>   //ServletConfig config;
>>   init();
>>  }
>>    public static synchronized void init() 
>>    {
>>    //String realPath =
>> getServletConfig().getServletContext().getRealPath("/");
>>    //rPath = realPath;
>>       if( !initialized ) // set the global RepositorySelector
>>       {
>>          defaultRepository = LogManager.getLoggerRepository();
>>          RepositorySelector theSelector = new Log4jSetup();
>>          LogManager.setRepositorySelector(theSelector, guard);
>>          initialized = true;
>>       }
>>       
>>       Hierarchy hierarchy = new Hierarchy(new
>>                                 RootCategory(Level.DEBUG));
>>       loadLog4JConfig(hierarchy);
>>       ClassLoader loader = 
>>            Thread.currentThread().getContextClassLoader();
>>       repositories.put(loader, hierarchy);
>>    }
>>    // load config.properties from WEB-INF
>>    private static void loadLog4JConfig(Hierarchy hierarchy) 
>>    {
>>     try 
>>     {
>>    String filePath =
>> rPath+File.separator+"WEB-INF"+File.separator+"config.properties";
>>    String logfilePath =
>> rPath+File.separator+"WEB-INF"+File.separator+"logs"+File.separator;
>>    if( !(new File(filePath)).isFile())
>>    {
>>     System.err.println("ERROR:Log4jSetUp::Cannot read the Log4J
>> configuration file. " +
>>     "Please check the path of the config init param in web.xml");
>>    }
>>    System.setProperty("ck.base",logfilePath);
>>    PropertyConfigurator.configure(filePath);
>>     }
>>     catch (Exception e) 
>>     {
>>             System.err.println("Throws Exception::"+e.getMessage());
>>        }
>>     }
>>    private Log4jSetup() {
>>    }
>>    public LoggerRepository getLoggerRepository() {
>>       ClassLoader loader = 
>>              Thread.currentThread().getContextClassLoader();
>>       LoggerRepository repository = 
>>             (LoggerRepository)repositories.get(loader);
>>       
>>       if (repository == null) {
>>           return defaultRepository;
>>       } else {
>>           return repository;
>>       }
>>    }
>> }
>> =========================================================
>> Can you please tell me whats wrong with the code.Is there any 
>> other way to
>> handle this?.
>> Thanks & Regards,
>> Sivamma.
>> 
>> 
>> Search the mailing list archives.  I have never used them -- I am just
>> somewhat familiar with what they do.
>> 
>> -- 
>> View this message in context: 
> http://www.nabble.com/Urgent-Please--How-to-create-different-log-files-with-different-property-files-in-same-webapplication-tf3974952.html#a11302960
> Sent from the Log4j - Users mailing list archive at Nabble.com.
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
> For additional commands, e-mail: log4j-user-help@logging.apache.org
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
> For additional commands, e-mail: log4j-user-help@logging.apache.org
> 
> 
> 

-- 
View this message in context: http://www.nabble.com/Urgent-Please--How-to-create-different-log-files-with-different-property-files-in-same-webapplication-tf3974952.html#a11335460
Sent from the Log4j - Users mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org