This forum has been archived. Please start a new discussion on GitHub.

logging for all ICE calls to IceGrid servers.


Is there any way to log all Ice calls in client side?

What we want to do is the client side log which will have following properties:
  • timestamp before Ice call
  • timestamp after Ice call
  • log for the status of the ice call (e.g. whether the call successfully finished or exception arised)
  • arguments and return vale of the ice call are not necessary
  • only timestamps of the call and whether there was a exception or not are enough.
  • both of AMI and SMI should be covered.
  • priority: C++ client, Java client, Python client(optional)
  • server nodes are managed by IceGrid

Since the log contents in above has nothing to do with the each interface, we are looking for creating automatic logging for each method. Is there any way to do it? (Perhaps subclasssing Proxy class?)


  • benoit
    benoit Rennes, France

    Did you consider using metrics from the new Ice Management eXtension in Ice 3.5? We have published an article describing metrics here. If this doesn't fit your use-case, you should be able to collect the information you're looking for using the Ice::Instrumentation local interfaces (also introduced with Ice 3.5).

    Let us know if you need more information on this.

  • Thanks, we'll dig for that.
  • Is it possible to expand on this thread topic? I'm looking for concrete examples of using the Ice-Instrumentation facilities to implement a logging technique similar to the original posters question. I'm using C# on the client side and would like to log each proxy invocation including the name of the invocation, parameters, timestamp, etc...

    I was able to create and attach an Invocation observer to the Ice communicator on the client side but I do not understand how to pull out specific data from the invocation instrumentation and the functions on the interfaces do not provide parameters that seem to provide anything.

    Any information about how (and if) to accomplish this is appreciated.

  • benoit
    benoit Rennes, France
    Hi Rick,

    Sorry, the observers don't provide the operation parameters, there are currently no ways to obtain this with the instrumentation facility. We don't have additional information on the instrumentation APIs other than this section in the Ice manual and the technical article on the Ice Management eXtension. Other than operation parameters, what information are you looking for?

  • Okay, thanks for the quick reply as usual Benoit