[Webinar] Streamline your web hosting managementRegister Today

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1828
  • Last Modified:

Weblogic 8.x and log4j

Dear Experts

I am writting a simple application using weblogic workshop and I want to be able to write/log to file using apache's log4j


Here is what I want to do:
1. Configue weblogic (8.x) and my app to write to a specified log file in my log4j.properties file
2. write logs (info,debug,warning) to the file on the app server from the application jsp, ejbs, and java (javabean) programs
3. provide a simple link to view the log file in my app

I have used log4j extensively in the past on standalone java programs, it just gets a little tricky in the app server environment..

Please provide simple and concise sample code and instructions..

Thanks


0
bmukoro
Asked:
bmukoro
3 Solutions
 
illusionz70Commented:
its used just the same way .... copy the libraries to your lib folder of app server.
set the logger , and log the same thougout your application.

for eg ,

log4j.rootLogger=FATAL, dest1
log4j.logger.sampleLogging=DEBUG, samplelog
 #samplelog will be the name of file where logs are written into
log4j.additivity.stpLogging=false

log4j.appender.dest1=org.apache.log4j.ConsoleAppender
log4j.appender.dest1.layout=org.apache.log4j.PatternLayout
log4j.appender.dest1.layout.ConversionPattern=%-5p:%l: %m%n
log4j.appender.dest1.ImmediateFlush=true

log4j.appender.samplelog=org.apache.log4j.RollingFileAppender
log4j.appender.samplelog.File="path wher file is store"
log4j.appender.samplelog.MaxFileSize=5000KB
log4j.appender.samplelog.MaxBackupIndex=5
log4j.appender.samplelog.layout=org.apache.log4j.PatternLayout
log4j.appender.samplelog.layout.ConversionPattern=%l:%d: %m%n

and
in your code
Logger log = Logger.getLogger("sampleLogging");


and then log.debug everywhere.

cheers,
0
 
joefm1218Commented:
In order to give me the ability to change my properties file without re-deploying the app, I leave my log4j.properties file outside the EAR file. I then add the properties directory to my jvm's classpath when starting the application server.

I place the necessary log4j jar files within the root directory of my EAR file. For any sub archives (ie. WAR files, EJB jar files, etc.), I create a entry in each of the Manifest files to point to these log4j jar files.

Example of war manifest:

Manifest-Version: 1.0
Created-By: Me
Class-Path: <some jar's...>.jar commons-logging.jar log4j-1.2.8.jar

0
 
rama_krishna580Commented:
Hi,

1. Configue your log4j.xml file..like below..

<?xml version= "1.0 " encoding= "UTF-8 " ? > 
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd " >

<log4j:configuration xmlns:log4j= ' http://jakarta.apache.org/log4j/ ' > 

<appender name= "ROOT " class= "org.apache.log4j.ConsoleAppender " >
<param name= "File " value= "C:/Log4jLogs/root.log "/ > 
<layout class = "org.apache.log4j.PatternLayout " >
<param name= "ConversionPattern " value= "[%t] %-5p %c - %m%n "/ > 
</layout > 
</appender > 

<root > 
<level value= "ON "/ > 
<appender-ref ref= "ROOT " / > 
</root > 

<appender name= "NETMAINT " class= "org.apache.log4j.ConsoleAppender " >
<param name= "File " value= "C:/Log4jLogs/netmaint.log "/ > 
<layout class = "org.apache.log4j.PatternLayout " >
<param name= "ConversionPattern " value= "[%t] %-5p %c - %m%n "/ > 
</layout > 
</appender > 

<logger name= "NetMaint " >
<level value= "DEBUG "/ > 
</logger > 

<logger name= "NetMaint " >
<appender-ref ref= "NETMAINT " / > 
</logger > 

</log4j:configuration > 


2. Writing log4j files...
http://www.qos.ch/logging/sc.html

3. http://www.onjava.com/pub/a/onjava/2003/04/02/log4j_ejb.html

R.K

0
 
bmukoroAuthor Commented:
I decided to use the weblogic console logger

Thanks for you comments/suggestions
0

Featured Post

Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

Tackle projects and never again get stuck behind a technical roadblock.
Join Now