Monitoring the performance of mission critical applications that utilize SQL databases is vital in today’s competitive business environments. Slow or unreliable applications result in user churn and lost revenue. Investing in a SQL monitor to keep tabs on back-end SQL database performance can help. But alone, a SQL monitor is not comprehensive and versatile enough to provide actionable insight into the performance of today’s multi-tier applications.
A patchwork solution consisting of, for example, Node.js monitoring and a SQL monitor from different vendors can be used on a Node.js application that uses a SQL database. However, such single-purpose tools do not integrate together to provide a consolidated view of the overall impact of application performance on user experience. This makes performance analysis and troubleshooting difficult.
The best performance monitoring solutions – such as those from Dynatrace – monitor all tiers and components throughout the entire application delivery chain, and can correlate and present data in a unified view. Dynatrace solutions include application monitor tools for the application tier such as for PHP performance monitoring as well as SQL monitor plugins for popular SQL databases like Oracle®, Microsoft® SQL Server®, and IBM® DB2®. Dynatrace also supports newer technologies such as Docker monitoring and NGINX monitoring. Additionally, these application and database stacks can be monitored while being load tested.
A vital phase of application rollout is the testing phase where comprehensive performance testing is carried out before deployment. Comprehensive testing includes load testing applications with variable user loads. An application may perform as expected under a certain load, but an increased load may show deficiencies in application architecture, code implementation, and software or hardware configuration.
Additionally, using a SQL monitor during a load test may reveal database performance issues that slow overall application performance. Dynatrace’s plugins for monitoring SQL databases capture metrics like database connection time, number of SQL calls over time, and concurrent user sessions over time. At the application tier, Dynatrace application monitoring includes SQL monitor functionality to capture SQL statements and SQL query times. Using Dynatrace’s load testing tools for web applications together with Dynatrace SQL monitor tools at the application and database tiers exposes any database performance hotspots that can be remedied to increase overall application performance.
In recent years, Node.js has been increasingly adopted for developing and running mission critical Web applications. Accordingly, monitoring Node.js performance is a requirement for many organizations. Dynatrace performs Node.js monitoring by using a native agent that is deployed easily in a Node.js system. The agent captures performance metrics for application, process, host, and virtual environment. For Node.js applications that query SQL databases, a Dynatrace SQL monitor can be implemented to provide SQL database performance data to complement collected Node.js performance data.