Execution Time: 33610 ms. Node pad3-test. Timestamp: 04/08/13 1:37:16 PM.
Some CallStack samples were dropped while generating the CallGraph to ensure performance overhead on application is not impacted.
The transaction reached the maximum limit of tracked JDBC calls.Current limits are '100' for 'Callgraph' and '500' for 'SQL Calls' view. '24' JDBC calls/queries are not reported in callgraph tree view. You may modify value of 'max-jdbc-calls-per-callgraph' property to see all JDBC calls in 'Callgraph' view.
Does anyone have a simliar problem where AppDynamics(AD) bumps up against the default values for this parameter? Also is there a perceptable impact to increasing the default values. Is there a "best practice" behind the default values if so, in exceeding this values is my app w/hibernate "too" chatty on the jdbc end. i"m curious about the weight of the jdbc calls/query metric.
My app is a grails based using hibernate to generate jdbc.
Thanks in advance,
Curtis
Hi Curtis,
Yes , updating the property "min-duration-for-jdbc-call-in-ms" will only affect the SQL Calls shown under Callgraph -> JDBC exit call popup for the sql queries taking >= the value for the property will only be shown in Call graph -> JDBC exit call popup, this property will affect the sql calls shown under "SQL Calls" tab in snapshot(where we see all sql calls taking 0 ms as well)
If you want to know which method is calling JDBC exit call and how much time the JDBC exit call taken and you are not able to see all JDBC exit calls in call graph, hence increasing the value for property "max-jdbc-calls-per-callgraph" will help
If you are concerned about JDBC exit calls with sql calls taking more than x ms then you need to use the property "min-duration-for-jdbc-call-in-ms"
as by default the value for property "min-duration-for-jdbc-call-in-ms" is 0(zero) and if you are interested in sql calls taking less than 0(zero ) ms as well in JDBC exit call and also all sql call in JDBC exit call , then you need to update both the properties as per your requirement
Hope this clarifies your query.
Thanks,
Arun
Hi curtisw,
Thanks for writing to us, You have seen this message as the agent imposes default limits to collect sql calls taking more than 10 ms as part of call graph in business transaction request -> call graph -> JDBC link
You can go ahead and increase the property value as per your requirement, Yes, this will have an overhead on memory footprint as you have mentioned and hence agent had designed with optimized default settings. However you can update the property value to a high value , to view all calls as part of call graph -> JDBC exit calls and revert back the property value to default value.
Also you could still see a max of 500 sql calls under "SQL Calls" section in snapshot collected.
Please refer doc for min and max value that can be provided for node level property "max-jdbc-calls-per-callgraph" :
Please let us know if that clarifies your query
Thanks,
Arun
Thanks Arun for the doc. I'm ok with modifying the property values. However I'm wondering what is a realistic value to increase it to? In lieu using some arbitrarily large jdbc calls maximum I think i'll increase the "min duration for jdbc" parameter so I see fewer results in the call graph and/or the jdbc calls views. Can you see changing the duration solving my issue vs changing the call maximum parameters? Although I have to wonder what this time based change will mask from being captured.
Take it easy,
Curtis
Hi Curtis,
Yes , updating the property "min-duration-for-jdbc-call-in-ms" will only affect the SQL Calls shown under Callgraph -> JDBC exit call popup for the sql queries taking >= the value for the property will only be shown in Call graph -> JDBC exit call popup, this property will affect the sql calls shown under "SQL Calls" tab in snapshot(where we see all sql calls taking 0 ms as well)
If you want to know which method is calling JDBC exit call and how much time the JDBC exit call taken and you are not able to see all JDBC exit calls in call graph, hence increasing the value for property "max-jdbc-calls-per-callgraph" will help
If you are concerned about JDBC exit calls with sql calls taking more than x ms then you need to use the property "min-duration-for-jdbc-call-in-ms"
as by default the value for property "min-duration-for-jdbc-call-in-ms" is 0(zero) and if you are interested in sql calls taking less than 0(zero ) ms as well in JDBC exit call and also all sql call in JDBC exit call , then you need to update both the properties as per your requirement
Hope this clarifies your query.
Thanks,
Arun