We need to configure email alerts on the database calls for one of our application.
What we need is an alert in case the allocated database connection pool usage for the application exceeds a given threshold(eg : if the allocated pool size for the application is 100 then we need an alert if it exceeds above 40).
The AppServer used is tomcat 7 and the Database server is MSSQL.
Tried searching for available measures but could not find any available for the requirement.
Also checked a plugin : https://community.compuwareapm.com/community/display/DL/SQLServer+Monitoring+Plugin , but it requires a windows collector ( we have linux based ones ) and also captures for only a single MSSQL server. We have multiple MSSQL servers though at present we need to monitor for only one server. Also not sure as to how can i set alerting on it.
Filed a Case # SUPDT-8686 but according to dynatrace support this is a configuration request and hence needs to be posted on the forum.
Request you to kindly assist us in the same as it is urgently required for one of our applications.
I recommend you look at creating a custom JMX measure. You get to the measure template from Create Measure – Server Side Performance – Agent-based Measures – Tomcat – Custom JMX Measure. Then click on "Browse Metrics", then "Pick Agent", then browse to tomcat.jdbc – Connection Pool – org.apache.tomcat.jdbc.pool.DataSource – NumActive.
Thank you for the reply.
Have created the required measure, set a threshold of above 20 on it and configured an incident for it with email based alerting.
Please find the snapshots for the same as below. Is this the correct configuration or would it require any modifications.
Thank for the reply.
However have a query.
The pool usage in the database dashlet shows 1% ( 7 / 500 ) however the custom JMX measure numActive value shows 5 as the connection count. There is a difference between the two reported values. Which one is the correct one.
Also can we get information as to which queries are keeping the connection open / queries currently using the connection. We are currently facing an issue in one of our application wherein the connection pool is getting exhausted and we need to track it find the actual issue ( heavy usage, connections not getting closed properly, etc. ).
What should be a ideal way to investigate the connection pool issue.
Also can we check the trend of pool usage in a chart.