axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From John Hawkins <>
Subject Re: RFE: axis c++ engine tracing
Date Thu, 17 Jun 2004 13:04:09 GMT

Sounds a good idea. However, this must be internationalised.

There are two considerations here:

Debug Tracing - this is purely for developers to understand what went
wrong. This is not something that should done lightly - if we do this then
we should do it properly i.e. put in entry/exit trace everywhere or nowhere
- there is nothing worse than dong a half job of trace ! Because this is
for developers only there is no need to internationalise this.

Informational "messages". I have to say that I think we would have very
little, if any,  of these? Most/all of our messages are, hopefully, now
exceptions. In which case, at the client-side,  it would be up to the
application writer to catch the exceptions and translate them to their
language as suitable. The chances are they would want to alter/wrap the
exceptions into their own format anyway. I think we should avoid putting in
any informational messages at the client, if at all possible. Perhaps on
the server side there is need for a "starting Axis server", "Stopping Axis
server" message but that'll be it won't it? (Perhaps a "Axis server has
died horribly" message as well? :-( But other than that I can't see the
need for spewing out a load of messages on the server either?

There are plenty of opensource pkgs out there that do internationalisation
and logging. I would point you towards this one  - - which we've looked at before (oh, it
happens to come from IBM too ;-)

Now, going onto another favuorite topic of mine Aspect orientation. It
would be possible to make entry and exit trace an aspect and apply it at
build time ! This would mean, if we needed to change the trace (for
whatever reason) in the future we would just change the aspect. It also
means that we can keep the codebase easier to work with and avoid people
having to swim through the trace to find the functional code.  I don't know
how good aspect C is now adays but I'm sure it would be up to this simple
job (aspect people always cite entry and exit trace as their samples!)

John Hawkins

             <aslom@cs.indiana                                          To 
             .edu>                     Apache AXIS C Developers List       
             17/06/2004 10:38                                           cc 
             Please respond to         RFE: axis c++ engine tracing        
              "Apache AXIS C                                               
             Developers List"                                              


filed it under

i think it would be good to have some kind of tracing/logging compiled
into binary that could be triggered by setting environment variable (for
example AXISCPP_TRACE=engine:ALL).

it would be very useful tool when debugging such problems like wrong
SOAPAction to see if engine received request and see where did it go and
why it was rejected.

any comments? is it alredy possible?

in particular i had to add this (now ocmmented out) to WSDDService.cpp
to track the problem - if i could use tracer/logger intead of printf it
would be great:

diff -u -r1.21 WSDDService.cpp
--- WSDDService.cpp     26 Apr 2004 04:04:39 -0000      1.21
+++ WSDDService.cpp     17 Jun 2004 09:37:28 -0000
@@ -100,8 +100,10 @@
 bool WSDDService::isAllowedMethod(const AxisChar* sServiceName) const
     list<AxisString>::const_iterator iter;
+    //printf("ALEK:::: service name=%s\n", sServiceName);
     for(iter = m_AllowedMethods.begin();iter !=
+        //printf("ALEK::: *iter %s\n", *iter);
         if((*iter) == sServiceName)
             return true;



The best way to predict the future is to invent it - Alan Kay

View raw message