Hello gurus,
I'm near to the dynaTrace tool so forgive me if this is a simple question. I've been taking a Leak Analysis dump of a JVM that has a memory leak. Our vendor (for support purposes) would like to get the dump in the standard HPROF format so they can analyze it. I don't have access to do this in my environment other than through dynaTrace. Is there a method by which I can get the standard HPROF format from the dynaTrace client?
Thanks!
Chris
Answer by Andreas G. ·
Hi Paul. Thanks for your reply. I will forward this feedback to the engineering team that is responsible for our mem dump feature. I am sure they find this very useful. I cant promise though if and when we will see improvements in dynatrace
Andi
Answer by Paul L. ·
Hi Andreas,
I recently opened ticket SUPDT-6829 with attachments that give some comparisons of the Dynatrace heap analysis and the IBM Heap Analyzer (free) tool; the difference is that the IBM tool could lead me to root cause while the Dynatrace views did not In my opinion it is partly a matter of data presentation and labeling although in this ticket support agreed that they could not provide the offending class; again, it might be more of data presentation that what is included in the Dynatrace dump, specifically, the ability to navigate a full tree to root and more easily view the data values as you do this to make it more user friendly Jinwoo Hwang is the author of the IBM tool and I have worked with him to understand how to use his tool and I think if you reach out to him that he might be willing to partner with you to improve the Dynatrace tool which would be a great help to everyone
Hope this helps
Paul
Answer by Andreas G. ·
Hi Sebastian
Seems like this is getting into a heated discussion. Here is are some things I want to offer
a) if you want to know the number of threads at any point in time you can get that information through JMX Metrics. We have the total number of threads already for every java process. What we dont have is number of threads per running state. That however could be queried via custom JMX Metrics in case the JVM provides this information
b) dynaTrace provides a very rich REST Interface where you can query almost everything. You can even query the FULL PUREPATH Tree through Rest: Server- and Clientside XML Reporting
c) I've worked with your company in the past - visitied you onsite. Not sure if the two of us met in person but I am happy to jump on a quick call to discuss your other open question.
And as you said. dynaTrace cant be the best solution for everything but we make sure that our customers get a lot of value with it. And we also listen
Andi
Answer by Sebastien T. ·
I need to know the quantity of live threads and their stacks to determine if I had leak or I had just too much load.
Eclipse Memory Analyzer give me that info, and lot more, and of course include everything you listed above. http://www.eclipse.org/mat/
Actually you can get the thread data from a Thread Dump, and unlike other tools which require a full-stop core dump for thread analysis, the dynaTrace Thread dump takes usually a few milliseconds and then the app resumes activity.
Usually, the heap dump is used after the server is dead... and so dynaTrace Thread Dump functionality is not an option. Anyway, to be relevant the thread dump must be at the same time than the heap dump...
You are confirming with your comments that free Heap dump tools has more functionality than dynaTrace heap dump features, and it's totally normal. I do not expect that dynaTrace rewrite a full fledged heap dump reader.
Also, the dynaTrace manual Thread Dump and heap dump functionality is not working for us, it's a confirmed dynaTrace bug, see case https://na5.salesforce.com/5007000000d2aDm
From what I get from Richard, is that dynaTrace is perfect, please... it's not even http request friendly, it's not able to persist part of a purepaths or web request the entire post body, and this bug/limitation is also confirmed by dynaTrace staff.
Answer by Sebastien T. ·
Bernd, you said: "we do not provide HPROF format export, because it reduces the information that is captured by dynaTrace format"
I guess you didn't try the tool. Using dynaTrace to read the heap dump greatly reduce the information available compared to what is provided by a normal heap dump generated by free tool.
Standard heap dump has 100% of the memory, and free tools are more complete to read the heap dump than dynaTrace.
Hi,
The level of detail given by a dynaTrace Memory sample changes depending on the type of sample you generate. The "Leak Analysis Snapshot" is a full memory sample, including all references completely mapped, trees generated, and GC Memory (effective heap, including child objects) calculated for each class and object. With any dynatrace snapshot type you can compare multiple heap dumps over time to see which classes are growing, and by how much. With a Selective memory snapshot I can see which method has allocated a configured class' objects, and how old each object is. I'm not aware of any free tools which can do all that...
Hope that helps,
Rick Boyd
Answer by Bernd G. ·
Hi Chris,
we do not provide HPROF format export, because it reduces the information that is captured by dynaTrace format.
Instead the recommended approach is to provide the dynaTrace Viewer to the vendor. The dynaTrace Viewer has been built for exactly this purpose and is free for active dynaTrace Customers. The viewer is available in the dynaTrace downloads area and a copy may be passed over to your vendor for support purposes.
Best,
Bernd
JANUARY 15, 3:00 PM GMT / 10:00 AM ET