Re: SMTPAppender in server-log4j.properties

2008-02-08 Thread toby cabot
> Or should we provide a way to add additional dependencies through
> config.xml (I don't know how complicated this will be)?

Yes, please.  Logging is critical but it can be complicated so
allowing users to make dependency jars (SNMP, SMTP, proprietary NMS
hooks, etc) available to log4j at run-time would be great.


Re: SMTPAppender in server-log4j.properties

2008-02-08 Thread toby cabot
On Thu, Feb 07, 2008 at 09:34:08PM -0800, David Jencks wrote:
> I'm not sure if any of the people who have tried this have succeeded.

I failed to get it to work using run-time configuration so I hacked
the root and j2ee-system pom files to add the extra jars needed (in my
case, Westhawk SNMP and my appender code) to the j2ee-system classpath
and built my own Geronimo.


Re: SMTPAppender in server-log4j.properties

2008-02-08 Thread David Jencks


On Feb 7, 2008, at 11:03 PM, Vamsavardhana Reddy wrote:

After I added geronimo-activation_1.1_spec-1.0.jar also to the  
classpath in the MANIFEST.MF, I got the SMTPAppender to send e-mail  
on an "ERROR".  I don't know if adding geronimo- 
javamail_1.4_mail-1.2.jar and geronimo-activation_1.1_spec-1.0.jar  
to j2ee-system classLoader will break anything else.  This hack is  
definitely not the way to handle this.  Should we make geronimo- 
javamail part of the base server so that j2ee-system config readily  
has these jars in the classLoader?  Or should we provide a way to  
add additional dependencies through config.xml (I don't know how  
complicated this will be)?


So far I don't really like either of these methods and think we  
should find out how hard it is to follow my idea of adding the smtp  
appender from somewhere the appropriate classes are already available  
from.


Maybe optional dependencies are the way to go... but this will be  
really hard to make work with the "bootstrap" server.jar.  Maybe when  
gshell can get all the g. jars back into the repo this will be easier.


thanks
david jencks




++Vamsi


On Feb 8, 2008 11:21 AM, Vamsavardhana Reddy <[EMAIL PROTECTED]>  
wrote:
I tried this hack by adding mail jar to the classpath entry in  
MANIFEST.MF inside server.jar.  I ended up with an NCDFE.


11:12:03,593 ERROR [GBeanInstanceState] Error while starting; GBean  
is now in th
e FAILED state: abstractName="org.apache.geronimo.configs/j2ee- 
system/2.0.3-SNAP
SHOT/car?ServiceModule=org.apache.geronimo.configs/j2ee-system/ 
2.0.3-SNAPSHOT/ca


r,j2eeType=SystemLog,name=Logger"
java.lang.NoClassDefFoundError: javax/activation/DataSource
at org.apache.log4j.net.SMTPAppender.activateOptions 
(Unknown Source)
at org.apache.log4j.config.PropertySetter.activate 
(PropertySetter.java:2

56)
at org.apache.log4j.config.PropertySetter.setProperties 
(PropertySetter.j


++Vamsi

On Feb 8, 2008 7:02 AM, N Z <[EMAIL PROTECTED]> wrote:
I would like to be able to send errors to my email when they occur  
but I cannot seem to get it to work. I have the following  
configuration in the properties file.


log4j.rootLogger=INFO, CONSOLE, FILE, MAIL

log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Threshold=$ 
{org.apache.geronimo.log.ConsoleLogLevel}

log4j.appender.CONSOLE.Target=System.out
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d{ABSOLUTE} %-5p [% 
c{1}] %m%n


log4j.appender.FILE=org.apache.log4j.RollingFileAppender
log4j.appender.FILE.Threshold=TRACE
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.ConversionPattern=%d{ABSOLUTE} %-5p [%c 
{1}] %m%n


#email appender
log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender
#defines how othen emails are send
log4j.appender.MAIL.BufferSize=1
log4j.appender.MAIL.SMTPHost="smtp.gmail.com"
[EMAIL PROTECTED]
[EMAIL PROTECTED]
log4j.appender.MAIL.Subject=Log ...
log4j.appender.MAIL.threshold=error
log4j.appender.MAIL.layout=org.apache.log4j.PatternLayout
log4j.appender.MAIL.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}: 
%L - %m%n


But I get the following error

19:32:54,828 ERROR [GBeanInstanceState] Error while starting; GBean  
is now in the FAILED state:  
abstractName="org.apache.geronimo.configs/j2ee-system/2.0.2/car? 
ServiceModule=org.apache.geronimo.configs/j2ee-system/2.0.2/ 
car,j2eeType=SystemLog,name=Logger"

java.lang.NoClassDefFoundError: javax/mail/Multipart
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
at java.lang.Class.getConstructor0(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at  
org.apache.log4j.helpers.OptionConverter.instantiateByClassName 
(OptionConverter.java:329)
at org.apache.log4j.helpers.OptionConverter.instantiateByKey 
(OptionConverter.java:120)
at org.apache.log4j.PropertyConfigurator.parseAppender 
(PropertyConfigurator.java:629)
at org.apache.log4j.PropertyConfigurator.parseCategory 
(PropertyConfigurator.java:612)
at org.apache.log4j.PropertyConfigurator.configureRootCategory 
(PropertyConfigurator.java:509)
at org.apache.log4j.PropertyConfigurator.doConfigure 
(PropertyConfigurator.java:415)
at org.apache.log4j.PropertyConfigurator.doConfigure 
(PropertyConfigurator.java:441)
at  
org.apache.geronimo.system.logging.log4j.URLConfigurator.doConfigure 
(URLConfigurator.java:117)
at  
org.apache.geronimo.system.logging.log4j.URLConfigurator.configure 
(URLConfigurator.java:44)
at  
org.apache.geronimo.system.logging.log4j.Log4jService.reconfigure 
(Log4jService.java:532)
at org.apache.geronimo.system.logging.log4j.Log4jService.doStart 
(Log4jService.java:586)
at  
org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance 

Re: SMTPAppender in server-log4j.properties

2008-02-07 Thread Vamsavardhana Reddy
After I added geronimo-activation_1.1_spec-1.0.jar also to the classpath in
the MANIFEST.MF, I got the SMTPAppender to send e-mail on an "ERROR".  I
don't know if adding geronimo-javamail_1.4_mail-1.2.jar and
geronimo-activation_1.1_spec-1.0.jar to j2ee-system classLoader will break
anything else.  This hack is definitely not the way to handle this.  Should
we make geronimo-javamail part of the base server so that j2ee-system config
readily has these jars in the classLoader?  Or should we provide a way to
add additional dependencies through config.xml (I don't know how complicated
this will be)?

++Vamsi


On Feb 8, 2008 11:21 AM, Vamsavardhana Reddy <[EMAIL PROTECTED]> wrote:

> I tried this hack by adding mail jar to the classpath entry in 
> MANIFEST.MFinside
> server.jar.  I ended up with an NCDFE.
>
> 11:12:03,593 ERROR [GBeanInstanceState] Error while starting; GBean is now
> in th
> e FAILED state: abstractName="org.apache.geronimo.configs
> /j2ee-system/2.0.3-SNAP
> SHOT/car?ServiceModule=org.apache.geronimo.configs
> /j2ee-system/2.0.3-SNAPSHOT/ca
> r,j2eeType=SystemLog,name=Logger"
> java.lang.NoClassDefFoundError: javax/activation/DataSource
> at org.apache.log4j.net.SMTPAppender.activateOptions(Unknown
> Source)
> at org.apache.log4j.config.PropertySetter.activate(
> PropertySetter.java:2
> 56)
> at org.apache.log4j.config.PropertySetter.setProperties(
> PropertySetter.j
>
> ++Vamsi
>
> On Feb 8, 2008 7:02 AM, N Z <[EMAIL PROTECTED]> wrote:
>
> > I would like to be able to send errors to my email when they occur but I
> > cannot seem to get it to work. I have the following configuration in the
> > properties file.
> >
> > log4j.rootLogger=INFO, CONSOLE, FILE, MAIL
> >
> > log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
> >
> > log4j.appender.CONSOLE.Threshold=${org.apache.geronimo.log.ConsoleLogLevel}
> > log4j.appender.CONSOLE.Target=System.out
> > log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
> > log4j.appender.CONSOLE.layout.ConversionPattern=%d{ABSOLUTE} %-5p
> > [%c{1}] %m%n
> >
> > log4j.appender.FILE=org.apache.log4j.RollingFileAppender
> > log4j.appender.FILE.Threshold=TRACE
> > log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
> > log4j.appender.FILE.layout.ConversionPattern=%d{ABSOLUTE} %-5p [%c{1}]
> > %m%n
> >
> > #email appender
> > log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender
> > #defines how othen emails are send
> > log4j.appender.MAIL.BufferSize=1
> > log4j.appender.MAIL.SMTPHost="smtp.gmail.com"
> > [EMAIL PROTECTED]
> > [EMAIL PROTECTED]
> > log4j.appender.MAIL.Subject=Log ...
> > log4j.appender.MAIL.threshold=error
> > log4j.appender.MAIL.layout=org.apache.log4j.PatternLayout
> > log4j.appender.MAIL.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L -
> > %m%n
> >
> > But I get the following error
> >
> > 19:32:54,828 ERROR [GBeanInstanceState] Error while starting; GBean is
> > now in the FAILED state: abstractName="org.apache.geronimo.configs
> > /j2ee-system/2.0.2/car?ServiceModule=org.apache.geronimo.configs
> > /j2ee-system/2.0.2/car,j2eeType=SystemLog,name=Logger"
> > java.lang.NoClassDefFoundError: javax/mail/Multipart
> > at java.lang.Class.getDeclaredConstructors0(Native Method)
> > at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
> > at java.lang.Class.getConstructor0(Unknown Source)
> > at java.lang.Class.newInstance0(Unknown Source)
> > at java.lang.Class.newInstance(Unknown Source)
> > at org.apache.log4j.helpers.OptionConverter.instantiateByClassName(
> > OptionConverter.java:329)
> > at org.apache.log4j.helpers.OptionConverter.instantiateByKey(
> > OptionConverter.java:120)
> > at org.apache.log4j.PropertyConfigurator.parseAppender(
> > PropertyConfigurator.java:629)
> > at org.apache.log4j.PropertyConfigurator.parseCategory(
> > PropertyConfigurator.java:612)
> > at org.apache.log4j.PropertyConfigurator.configureRootCategory(
> > PropertyConfigurator.java:509)
> > at org.apache.log4j.PropertyConfigurator.doConfigure(
> > PropertyConfigurator.java:415)
> > at org.apache.log4j.PropertyConfigurator.doConfigure(
> > PropertyConfigurator.java:441)
> > at
> > org.apache.geronimo.system.logging.log4j.URLConfigurator.doConfigure(
> > URLConfigurator.java:117)
> > at
> > org.apache.geronimo.system.logging.log4j.URLConfigurator.configure(
> > URLConfigurator.java:44)
> > at org.apache.geronimo.system.logging.log4j.Log4jService.reconfigure
> > (Log4jService.java:532)
> > at org.apache.geronimo.system.logging.log4j.Log4jService.doStart(
> > Log4jService.java:586)
> > at org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(
> > GBeanInstance.java:996)
> > at
> > org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(
> > GBeanInstanceState.java:268)
> > at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(
> > GBeanInstanceState.java:102)
> > at
> > 

Re: SMTPAppender in server-log4j.properties

2008-02-07 Thread Vamsavardhana Reddy
I tried this hack by adding mail jar to the classpath entry in
MANIFEST.MFinside
server.jar.  I ended up with an NCDFE.

11:12:03,593 ERROR [GBeanInstanceState] Error while starting; GBean is now
in th
e FAILED state: abstractName="org.apache.geronimo.configs
/j2ee-system/2.0.3-SNAP
SHOT/car?ServiceModule=org.apache.geronimo.configs
/j2ee-system/2.0.3-SNAPSHOT/ca
r,j2eeType=SystemLog,name=Logger"
java.lang.NoClassDefFoundError: javax/activation/DataSource
at org.apache.log4j.net.SMTPAppender.activateOptions(Unknown Source)
at org.apache.log4j.config.PropertySetter.activate(
PropertySetter.java:2
56)
at org.apache.log4j.config.PropertySetter.setProperties(
PropertySetter.j

++Vamsi

On Feb 8, 2008 7:02 AM, N Z <[EMAIL PROTECTED]> wrote:

> I would like to be able to send errors to my email when they occur but I
> cannot seem to get it to work. I have the following configuration in the
> properties file.
>
> log4j.rootLogger=INFO, CONSOLE, FILE, MAIL
>
> log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
>
> log4j.appender.CONSOLE.Threshold=${org.apache.geronimo.log.ConsoleLogLevel}
> log4j.appender.CONSOLE.Target=System.out
> log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
> log4j.appender.CONSOLE.layout.ConversionPattern=%d{ABSOLUTE} %-5p [%c{1}]
> %m%n
>
> log4j.appender.FILE=org.apache.log4j.RollingFileAppender
> log4j.appender.FILE.Threshold=TRACE
> log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
> log4j.appender.FILE.layout.ConversionPattern=%d{ABSOLUTE} %-5p [%c{1}]
> %m%n
>
> #email appender
> log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender
> #defines how othen emails are send
> log4j.appender.MAIL.BufferSize=1
> log4j.appender.MAIL.SMTPHost="smtp.gmail.com"
> [EMAIL PROTECTED]
> [EMAIL PROTECTED]
> log4j.appender.MAIL.Subject=Log ...
> log4j.appender.MAIL.threshold=error
> log4j.appender.MAIL.layout=org.apache.log4j.PatternLayout
> log4j.appender.MAIL.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L -
> %m%n
>
> But I get the following error
>
> 19:32:54,828 ERROR [GBeanInstanceState] Error while starting; GBean is now
> in the FAILED state: abstractName="org.apache.geronimo.configs
> /j2ee-system/2.0.2/car?ServiceModule=org.apache.geronimo.configs
> /j2ee-system/2.0.2/car,j2eeType=SystemLog,name=Logger"
> java.lang.NoClassDefFoundError: javax/mail/Multipart
> at java.lang.Class.getDeclaredConstructors0(Native Method)
> at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
> at java.lang.Class.getConstructor0(Unknown Source)
> at java.lang.Class.newInstance0(Unknown Source)
> at java.lang.Class.newInstance(Unknown Source)
> at org.apache.log4j.helpers.OptionConverter.instantiateByClassName(
> OptionConverter.java:329)
> at org.apache.log4j.helpers.OptionConverter.instantiateByKey(
> OptionConverter.java:120)
> at org.apache.log4j.PropertyConfigurator.parseAppender(
> PropertyConfigurator.java:629)
> at org.apache.log4j.PropertyConfigurator.parseCategory(
> PropertyConfigurator.java:612)
> at org.apache.log4j.PropertyConfigurator.configureRootCategory(
> PropertyConfigurator.java:509)
> at org.apache.log4j.PropertyConfigurator.doConfigure(
> PropertyConfigurator.java:415)
> at org.apache.log4j.PropertyConfigurator.doConfigure(
> PropertyConfigurator.java:441)
> at
> org.apache.geronimo.system.logging.log4j.URLConfigurator.doConfigure(
> URLConfigurator.java:117)
> at org.apache.geronimo.system.logging.log4j.URLConfigurator.configure(
> URLConfigurator.java:44)
> at org.apache.geronimo.system.logging.log4j.Log4jService.reconfigure(
> Log4jService.java:532)
> at org.apache.geronimo.system.logging.log4j.Log4jService.doStart(
> Log4jService.java:586)
> at org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(
> GBeanInstance.java:996)
> at
> org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(
> GBeanInstanceState.java:268)
> at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(
> GBeanInstanceState.java:102)
> at org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive
> (GBeanInstanceState.java:124)
> at org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(
> GBeanInstance.java:553)
> at org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(
> BasicKernel.java:379)
> at
> org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans
> (ConfigurationUtil.java:448)
> at
> org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration
> (ConfigurationUtil.java:200)
> at
> org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration
> (ConfigurationUtil.java:159)
> at
> org.apache.geronimo.kernel.util.MainConfigurationBootstrapper.loadBootConfiguration
> (MainConfigurationBootstrapper.java:84)
> at
> org.apache.geronimo.kernel.util.MainConfigurationBootstrapper.getMain(
> MainConfigurationBootstrapper.java:57)
>   

Re: SMTPAppender in server-log4j.properties

2008-02-07 Thread Vamsavardhana Reddy
I meant bin/server.jar

++Vamsi

On Feb 8, 2008 11:08 AM, Vamsavardhana Reddy <[EMAIL PROTECTED]> wrote:

> hmm...  we need to get the mail jar into j2ee-system classLoader.
> Modifying MANIFES.MF on file system won't help because j2ee-system car
> gets loaded from startup.jar.
>
> ++Vamsi
>
>
> On Feb 8, 2008 7:02 AM, N Z <[EMAIL PROTECTED]> wrote:
>
> > I would like to be able to send errors to my email when they occur but I
> > cannot seem to get it to work. I have the following configuration in the
> > properties file.
> >
> > log4j.rootLogger=INFO, CONSOLE, FILE, MAIL
> >
> > log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
> >
> > log4j.appender.CONSOLE.Threshold=${org.apache.geronimo.log.ConsoleLogLevel}
> > log4j.appender.CONSOLE.Target=System.out
> > log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
> > log4j.appender.CONSOLE.layout.ConversionPattern=%d{ABSOLUTE} %-5p
> > [%c{1}] %m%n
> >
> > log4j.appender.FILE=org.apache.log4j.RollingFileAppender
> > log4j.appender.FILE.Threshold=TRACE
> > log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
> > log4j.appender.FILE.layout.ConversionPattern=%d{ABSOLUTE} %-5p [%c{1}]
> > %m%n
> >
> > #email appender
> > log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender
> > #defines how othen emails are send
> > log4j.appender.MAIL.BufferSize=1
> > log4j.appender.MAIL.SMTPHost="smtp.gmail.com"
> > [EMAIL PROTECTED]
> > [EMAIL PROTECTED]
> > log4j.appender.MAIL.Subject=Log ...
> > log4j.appender.MAIL.threshold=error
> > log4j.appender.MAIL.layout=org.apache.log4j.PatternLayout
> > log4j.appender.MAIL.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L -
> > %m%n
> >
> > But I get the following error
> >
> > 19:32:54,828 ERROR [GBeanInstanceState] Error while starting; GBean is
> > now in the FAILED state: abstractName="org.apache.geronimo.configs
> > /j2ee-system/2.0.2/car?ServiceModule=org.apache.geronimo.configs
> > /j2ee-system/2.0.2/car,j2eeType=SystemLog,name=Logger"
> > java.lang.NoClassDefFoundError: javax/mail/Multipart
> > at java.lang.Class.getDeclaredConstructors0(Native Method)
> > at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
> > at java.lang.Class.getConstructor0(Unknown Source)
> > at java.lang.Class.newInstance0(Unknown Source)
> > at java.lang.Class.newInstance(Unknown Source)
> > at org.apache.log4j.helpers.OptionConverter.instantiateByClassName(
> > OptionConverter.java:329)
> > at org.apache.log4j.helpers.OptionConverter.instantiateByKey(
> > OptionConverter.java:120)
> > at org.apache.log4j.PropertyConfigurator.parseAppender(
> > PropertyConfigurator.java:629)
> > at org.apache.log4j.PropertyConfigurator.parseCategory(
> > PropertyConfigurator.java:612)
> > at org.apache.log4j.PropertyConfigurator.configureRootCategory(
> > PropertyConfigurator.java:509)
> > at org.apache.log4j.PropertyConfigurator.doConfigure(
> > PropertyConfigurator.java:415)
> > at org.apache.log4j.PropertyConfigurator.doConfigure(
> > PropertyConfigurator.java:441)
> > at
> > org.apache.geronimo.system.logging.log4j.URLConfigurator.doConfigure(
> > URLConfigurator.java:117)
> > at
> > org.apache.geronimo.system.logging.log4j.URLConfigurator.configure(
> > URLConfigurator.java:44)
> > at org.apache.geronimo.system.logging.log4j.Log4jService.reconfigure
> > (Log4jService.java:532)
> > at org.apache.geronimo.system.logging.log4j.Log4jService.doStart(
> > Log4jService.java:586)
> > at org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(
> > GBeanInstance.java:996)
> > at
> > org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(
> > GBeanInstanceState.java:268)
> > at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(
> > GBeanInstanceState.java:102)
> > at
> > org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(
> > GBeanInstanceState.java:124)
> > at org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(
> > GBeanInstance.java:553)
> > at org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(
> > BasicKernel.java:379)
> > at
> > org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans
> > (ConfigurationUtil.java:448)
> > at
> > org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration
> > (ConfigurationUtil.java:200)
> > at
> > org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration
> > (ConfigurationUtil.java:159)
> > at
> > org.apache.geronimo.kernel.util.MainConfigurationBootstrapper.loadBootConfiguration
> > (MainConfigurationBootstrapper.java:84)
> > at
> > org.apache.geronimo.kernel.util.MainConfigurationBootstrapper.getMain(
> > MainConfigurationBootstrapper.java:57)
> > at
> > org.apache.geronimo.kernel.util.MainConfigurationBootstrapper.main(
> > MainConfigurationBootstrapper.java:38)
> > at org.apache.geronimo.cli.AbstractCLI.executeMain(AbstractCLI.java
> > :67)
> > 

Re: SMTPAppender in server-log4j.properties

2008-02-07 Thread Vamsavardhana Reddy
hmm...  we need to get the mail jar into j2ee-system classLoader.  Modifying
MANIFES.MF on file system won't help because j2ee-system car gets loaded
from startup.jar.

++Vamsi

On Feb 8, 2008 7:02 AM, N Z <[EMAIL PROTECTED]> wrote:

> I would like to be able to send errors to my email when they occur but I
> cannot seem to get it to work. I have the following configuration in the
> properties file.
>
> log4j.rootLogger=INFO, CONSOLE, FILE, MAIL
>
> log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
>
> log4j.appender.CONSOLE.Threshold=${org.apache.geronimo.log.ConsoleLogLevel}
> log4j.appender.CONSOLE.Target=System.out
> log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
> log4j.appender.CONSOLE.layout.ConversionPattern=%d{ABSOLUTE} %-5p [%c{1}]
> %m%n
>
> log4j.appender.FILE=org.apache.log4j.RollingFileAppender
> log4j.appender.FILE.Threshold=TRACE
> log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
> log4j.appender.FILE.layout.ConversionPattern=%d{ABSOLUTE} %-5p [%c{1}]
> %m%n
>
> #email appender
> log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender
> #defines how othen emails are send
> log4j.appender.MAIL.BufferSize=1
> log4j.appender.MAIL.SMTPHost="smtp.gmail.com"
> [EMAIL PROTECTED]
> [EMAIL PROTECTED]
> log4j.appender.MAIL.Subject=Log ...
> log4j.appender.MAIL.threshold=error
> log4j.appender.MAIL.layout=org.apache.log4j.PatternLayout
> log4j.appender.MAIL.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L -
> %m%n
>
> But I get the following error
>
> 19:32:54,828 ERROR [GBeanInstanceState] Error while starting; GBean is now
> in the FAILED state: abstractName="org.apache.geronimo.configs
> /j2ee-system/2.0.2/car?ServiceModule=org.apache.geronimo.configs
> /j2ee-system/2.0.2/car,j2eeType=SystemLog,name=Logger"
> java.lang.NoClassDefFoundError: javax/mail/Multipart
> at java.lang.Class.getDeclaredConstructors0(Native Method)
> at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
> at java.lang.Class.getConstructor0(Unknown Source)
> at java.lang.Class.newInstance0(Unknown Source)
> at java.lang.Class.newInstance(Unknown Source)
> at org.apache.log4j.helpers.OptionConverter.instantiateByClassName(
> OptionConverter.java:329)
> at org.apache.log4j.helpers.OptionConverter.instantiateByKey(
> OptionConverter.java:120)
> at org.apache.log4j.PropertyConfigurator.parseAppender(
> PropertyConfigurator.java:629)
> at org.apache.log4j.PropertyConfigurator.parseCategory(
> PropertyConfigurator.java:612)
> at org.apache.log4j.PropertyConfigurator.configureRootCategory(
> PropertyConfigurator.java:509)
> at org.apache.log4j.PropertyConfigurator.doConfigure(
> PropertyConfigurator.java:415)
> at org.apache.log4j.PropertyConfigurator.doConfigure(
> PropertyConfigurator.java:441)
> at
> org.apache.geronimo.system.logging.log4j.URLConfigurator.doConfigure(
> URLConfigurator.java:117)
> at org.apache.geronimo.system.logging.log4j.URLConfigurator.configure(
> URLConfigurator.java:44)
> at org.apache.geronimo.system.logging.log4j.Log4jService.reconfigure(
> Log4jService.java:532)
> at org.apache.geronimo.system.logging.log4j.Log4jService.doStart(
> Log4jService.java:586)
> at org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(
> GBeanInstance.java:996)
> at
> org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(
> GBeanInstanceState.java:268)
> at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(
> GBeanInstanceState.java:102)
> at org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive
> (GBeanInstanceState.java:124)
> at org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(
> GBeanInstance.java:553)
> at org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(
> BasicKernel.java:379)
> at
> org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans
> (ConfigurationUtil.java:448)
> at
> org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration
> (ConfigurationUtil.java:200)
> at
> org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration
> (ConfigurationUtil.java:159)
> at
> org.apache.geronimo.kernel.util.MainConfigurationBootstrapper.loadBootConfiguration
> (MainConfigurationBootstrapper.java:84)
> at
> org.apache.geronimo.kernel.util.MainConfigurationBootstrapper.getMain(
> MainConfigurationBootstrapper.java:57)
> at org.apache.geronimo.kernel.util.MainConfigurationBootstrapper.main(
> MainConfigurationBootstrapper.java:38)
> at org.apache.geronimo.cli.AbstractCLI.executeMain(AbstractCLI.java
> :67)
> at org.apache.geronimo.cli.daemon.DaemonCLI.main(DaemonCLI.java:30)
>
>
> I have tried to add the javamail.jar to the
> j2ee-system/Meta-Inf/Manifest.MF file. But still to no luck. I have also put
> the javamail.jar into the repository and that still does nothing. Please
> any help would be very much appreciated.
> Thank you,
> 

Re: SMTPAppender in server-log4j.properties

2008-02-07 Thread David Jencks

I'm not sure if any of the people who have tried this have succeeded.

I think you will not be able to get the javamail classes into the  
log4j classloader.


You might have better luck trying to add the smtp appender in code  
from a geronimo configuration that does include the javamail  
classes.  You might be able to use hidden-classes to exclude the  
original log4j smtp appender class and reload it in your  
configuration, thus letting it be created without a NCDFE.  I'm not  
sure how you would arrange the configuration for this appender: IIRC  
there is some kind of programmatic interface you can use.


thanks
david jencks

On Feb 7, 2008, at 5:32 PM, N Z wrote:

I would like to be able to send errors to my email when they occur  
but I cannot seem to get it to work. I have the following  
configuration in the properties file.


log4j.rootLogger=INFO, CONSOLE, FILE, MAIL

log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Threshold=$ 
{org.apache.geronimo.log.ConsoleLogLevel}

log4j.appender.CONSOLE.Target=System.out
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d{ABSOLUTE} %-5p [% 
c{1}] %m%n


log4j.appender.FILE=org.apache.log4j.RollingFileAppender
log4j.appender.FILE.Threshold=TRACE
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.ConversionPattern=%d{ABSOLUTE} %-5p [%c 
{1}] %m%n


#email appender
log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender
#defines how othen emails are send
log4j.appender.MAIL.BufferSize=1
log4j.appender.MAIL.SMTPHost="smtp.gmail.com"
[EMAIL PROTECTED]
[EMAIL PROTECTED]
log4j.appender.MAIL.Subject=Log ...
log4j.appender.MAIL.threshold=error
log4j.appender.MAIL.layout=org.apache.log4j.PatternLayout
log4j.appender.MAIL.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}: 
%L - %m%n


But I get the following error

19:32:54,828 ERROR [GBeanInstanceState] Error while starting; GBean  
is now in the FAILED state:  
abstractName="org.apache.geronimo.configs/j2ee-system/2.0.2/car? 
ServiceModule=org.apache.geronimo.configs/j2ee-system/2.0.2/ 
car,j2eeType=SystemLog,name=Logger"

java.lang.NoClassDefFoundError: javax/mail/Multipart
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
at java.lang.Class.getConstructor0(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at  
org.apache.log4j.helpers.OptionConverter.instantiateByClassName 
(OptionConverter.java:329)
at org.apache.log4j.helpers.OptionConverter.instantiateByKey 
(OptionConverter.java:120)
at org.apache.log4j.PropertyConfigurator.parseAppender 
(PropertyConfigurator.java:629)
at org.apache.log4j.PropertyConfigurator.parseCategory 
(PropertyConfigurator.java:612)
at org.apache.log4j.PropertyConfigurator.configureRootCategory 
(PropertyConfigurator.java:509)
at org.apache.log4j.PropertyConfigurator.doConfigure 
(PropertyConfigurator.java:415)
at org.apache.log4j.PropertyConfigurator.doConfigure 
(PropertyConfigurator.java:441)
at  
org.apache.geronimo.system.logging.log4j.URLConfigurator.doConfigure 
(URLConfigurator.java:117)
at  
org.apache.geronimo.system.logging.log4j.URLConfigurator.configure 
(URLConfigurator.java:44)
at  
org.apache.geronimo.system.logging.log4j.Log4jService.reconfigure 
(Log4jService.java:532)
at org.apache.geronimo.system.logging.log4j.Log4jService.doStart 
(Log4jService.java:586)
at  
org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance 
(GBeanInstance.java:996)
at  
org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart( 
GBeanInstanceState.java:268)
at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start 
(GBeanInstanceState.java:102)
at  
org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive 
(GBeanInstanceState.java:124)
at  
org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive 
(GBeanInstance.java:553)
at  
org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean 
(BasicKernel.java:379)
at  
org.apache.geronimo.kernel.config.ConfigurationUtil.startConfiguration 
GBeans(ConfigurationUtil.java:448)
at  
org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfi 
guration(ConfigurationUtil.java:200)
at  
org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfi 
guration(ConfigurationUtil.java:159)
at  
org.apache.geronimo.kernel.util.MainConfigurationBootstrapper.loadBoot 
Configuration(MainConfigurationBootstrapper.java:84)
at  
org.apache.geronimo.kernel.util.MainConfigurationBootstrapper.getMain( 
MainConfigurationBootstrapper.java:57)
at  
org.apache.geronimo.kernel.util.MainConfigurationBootstrapper.main 
(MainConfigurationBootstrapper.java:38)
at org.apache.geronimo.cli.AbstractCLI.executeMain 
(AbstractCLI.java:67)
at