You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by Dan Becker <da...@gmail.com> on 2008/10/10 15:39:56 UTC

Enhancements to Tuscany logging and trace

I've been looking at the Tuscany "tracing-aspectj" module and have been 
contemplating a few enhancements.

For those who have not run this module, the Aspect-Oriented-Programming 
(AOP) based trace in Tuscany allows a Java agent (AspectJ) to run while 
Tuscany is running. This special agent can detect entry and exit of 
methods and other runtime conditions. The nice feature about this AOP 
style programming, is that the Tuscany code does not have to be littered 
with logging and tracing calls, and so the code base remains much more 
readable. Additionally, the Tuscany users of logging and trace do not 
need to be dependent on developers to add the tracing code to the code 
base. (How many times have you run a trace and it misses the method you 
are interested in? Or you thought the trace was too verbose and you 
wished you could trace one method? AOP facilitates this.)

1) I would like to break out some of the logging and trace pointcuts 
into the runtime configuration file (aop.xml). Currently the trace 
points are compiled into the module. Users must recompile to trace other 
than "* org.apache.tuscany.sca..*.*(..)" methods. It would be nice if 
this were in the config file. Then users interested in just one thing, 
say Java introspection, could change this to 
"org.apache.tuscany.sca.interfacedef.java.impl.*Introspection*", and 
this would take effect without recompiling.

2) I would like to add a few pointcuts to look at constructors.

3) I would like to make a few explicit timing pointcuts and aspects for 
those who want to time certain Tuscany transactions, methods, or 
constructors.

4) I would like to run these with Tomcat or WebSphere or other to ensure 
they work and trace some useful things.

5) Finally, I would like to add a few user guide articles on how to use 
this.

Please, if you have any ideas or comments about logging and tracing in 
Tuscany, please let me know.

---
Thanks, Dan Becker

Re: Enhancements to Tuscany logging and trace

Posted by Raymond Feng <en...@gmail.com>.
Good proposal. +1 on all the items.

Thanks,
Raymond
--------------------------------------------------
From: "Dan Becker" <da...@gmail.com>
Sent: Friday, October 10, 2008 6:39 AM
To: <de...@tuscany.apache.org>
Subject: Enhancements to Tuscany logging and trace

> I've been looking at the Tuscany "tracing-aspectj" module and have been 
> contemplating a few enhancements.
> 
> For those who have not run this module, the Aspect-Oriented-Programming 
> (AOP) based trace in Tuscany allows a Java agent (AspectJ) to run while 
> Tuscany is running. This special agent can detect entry and exit of 
> methods and other runtime conditions. The nice feature about this AOP 
> style programming, is that the Tuscany code does not have to be littered 
> with logging and tracing calls, and so the code base remains much more 
> readable. Additionally, the Tuscany users of logging and trace do not 
> need to be dependent on developers to add the tracing code to the code 
> base. (How many times have you run a trace and it misses the method you 
> are interested in? Or you thought the trace was too verbose and you 
> wished you could trace one method? AOP facilitates this.)
> 
> 1) I would like to break out some of the logging and trace pointcuts 
> into the runtime configuration file (aop.xml). Currently the trace 
> points are compiled into the module. Users must recompile to trace other 
> than "* org.apache.tuscany.sca..*.*(..)" methods. It would be nice if 
> this were in the config file. Then users interested in just one thing, 
> say Java introspection, could change this to 
> "org.apache.tuscany.sca.interfacedef.java.impl.*Introspection*", and 
> this would take effect without recompiling.
> 
> 2) I would like to add a few pointcuts to look at constructors.
> 
> 3) I would like to make a few explicit timing pointcuts and aspects for 
> those who want to time certain Tuscany transactions, methods, or 
> constructors.
> 
> 4) I would like to run these with Tomcat or WebSphere or other to ensure 
> they work and trace some useful things.
> 
> 5) Finally, I would like to add a few user guide articles on how to use 
> this.
> 
> Please, if you have any ideas or comments about logging and tracing in 
> Tuscany, please let me know.
> 
> ---
> Thanks, Dan Becker