This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 80495

Summary: Feature for reporting aggregated CPU time by functionality
Product: profiler Reporter: _ gsporar <gsporar>
Component: BaseAssignee: Petr Cyhelsky <cyhelsky>
Status: NEW ---    
Severity: blocker    
Priority: P3    
Version: 5.x   
Hardware: All   
OS: All   
Issue Type: ENHANCEMENT Exception Reporter:

Description _ gsporar 2006-07-18 16:32:44 UTC
Based on package/class/method name report back some higher level values for how
much time was spent in what sorts of processing.

In other words, a reporting filter/aggregation feature.  The user could select
pre-defined sets of "functionalities."  As an example, a "SOAP functionality"
feature would be defined with the following root methods:

Parsing + SOAP protocol handling, the sum of the following entry points :
com.sun.xml.ws.protocol.soap.server.SOAPMessageDispatcher#toMessageInfo
com.sun.xml.ws.protocol.soap.server.SOAPDecoder#doMustUnderstandProcessing
com.sun.xml.ws.protocol.soap.server.SOAPMessageDispatcher#getSOAPMessage

Serialization :
com.sun.xml.ws.protocol.soap.server.SOAPMessageDispatcher#makeSOAPMessage

Time spent in the endpoint itself:
com.sun.xml.ws.protocol.soap.server.SOAPMessageDispatcher#invokeEndpoint

Sending a reply (network there):
com.sun.xml.ws.protocol.soap.server.SOAPMessageDispatcher#sendResponse

Then when the "SOAP functionality" filter is chosen by the user the Profiler
would report CPU time in a report that contains something like:

Parsing + SOAP protocol handling: 25%
Serialization : 20%
Time spent in the endpoint itself: 10%
Sending a reply (network): 45% 

Having stacked/aggregation of functionality profiles would be the ideal feature.

For example, the user could say "This is a J2EE application, could you present
to me the time spent in each J2EE component?" Examples would be: Web Container,
EJB, DataBase, Transaction, JMX, etc. So J2EE would be a profile of
functionalities composed by the aggregation of finer profiles (EJB, db, etc).
The SOAP profile described above could be a profile contained by the Web
container profile, etc.

Another example would be: "This is a J2SE application that accesses a web
service for data that is then drawn using Java2D."  The user might want to know
how much time is spent marshalling/unmarshalling the data, how much time in
rendering, etc.
Comment 1 J Bachorik 2008-05-15 11:20:44 UTC
This is partially addressed by "Area-of-interest" graphs. I will add more categories to better reflect the requirements
of this enhancement.
Comment 2 Tomas Hurka 2009-04-08 10:10:07 UTC
Target milestone cleanup.
Comment 3 Tomas Hurka 2009-04-08 12:53:43 UTC
Milestone cleanup: future->next
Comment 4 J Bachorik 2011-12-01 13:32:47 UTC
It's rather probably this will make it to 7.2
Comment 5 J Bachorik 2012-08-01 08:33:56 UTC
changing owner