If you’re an application owner or developer, you’re probably familiar with many application performance management (APM) tools out there. APM tools can help you quickly narrow problems down to the lines of code that are causing them. But not all problems originate with the application itself – some are a result of how the application is delivered. Good application delivery infrastructure ensures applications can scale to handle hundreds of thousands of users and are resilient to failure.
Today we’re proudly launching a private beta release of NGINX Amplify. NGINX Amplify is a tool designed to monitor NGINX and your application delivery infrastructure. With NGINX Amplify you can proactively identify problems before they affect any of your users, as well as:
- Visually identify performance bottlenecks, overloaded servers, or potential DDoS attacks
- Improve and optimize NGINX performance with intelligent advice and recommendations
- Get alerts when something is wrong with the delivery of your application
- Plan capacity and performance for web applications
- Keep track of systems running NGINX
Editor – NGINX Amplify is now in public beta.
To learn more about NGINX Amplify and see a demo, watch our on‑demand webinar, Improve App Performance & Reliability with NGINX Amplify. A transcript of the first part of the webinar, an overview of NGINX Amplify features, is available on our blog.
And check out all the other posts on our blog about how to monitor NGINX and NGINX Plus with NGINX Amplify.
NGINX Amplify works with a small agent application that is installed on the servers to be monitored. Similar to how APM tools work, the agent collects statistics and feeds it back to our central repository.
Graphs Provide Detailed Insight
When you first log in to NGINX Amplify, you’re presented with a graphical dashboard. From here you can see an overview of all your monitored systems with graphs of key metrics, such as CPU, memory, and disk usage.
The left column lists the Systems that NGINX Amplify is monitoring (those with the NGINX Amplify agent installed). NGINX does not necessarily have to be installed, but NGINX Amplify gives you a lot of additional visibility into NGINX.
Click on a system to open detailed graphs in the center Preview column (You can also scroll up and down in the Preview column to find a system). NGINX Amplify provides graphs to monitor key system‑level statistics such as:
- CPU Usage – How much of the CPU is being used over time
- Memory – How much of the memory on this system is being used
- Disk – How well the disk is performing
- Network – How much traffic is going in and out of this system
If you’re monitoring NGINX you get additional statistics such as:
- Req/s – How many requests per second is NGINX handling, one of the most critical statistics in application performance
- Conn/s – How many incoming connections clients are making each second, another critical statistic in application performance
- NGINX Resource Usage – How much CPU, memory, and disk NGINX is using on the given server
Click on an individual graph in the Preview column to bring up a larger version in the Graph Feed column on the right side. You can select the time range to display, ranging from one hour (1H) to one week (1W). In the figure, the graph is reporting disk latency for the last 4 hours. Multiple graphs can then be pinned to the Graph Feed.
When you hover over a system in the Systems column, four vertical dots appear. Click on the vertical dots to expose a pullout toolbar.
The toolbar reports key metrics, such as CPU utilization, in a numerical format to give you a quick view of the current state of the system. In the screenshot above, we can easily see that the CPU on ubuntu‑amplify is being moderately utilized at 55.07%. The pullout bar displays both system and NGINX stats. The Systems column is sticky, so you can access the pullout toolbar no matter which NGINX Amplify screen you’re on.
NGINX Amplify Gives You Valuable Configuration Advice
When you select the Reports tab in the top menu bar, NGINX Amplify recommends configuration changes that can improve to performance, reliability, and security of your NGINX infrastructure. Most static analysis tools and compilers output cryptic error messages when they detect a problem, but NGINX Amplify gives you more. The clear and thorough recommendations tell you exactly where the problem is, why it is a problem, and how to fix it.
In the following example, the
worker_processes directive is set to a static value in the current configuration. NGINX Amplify recommends instead that you set it to
auto, which instructs NGINX to create one NGINX worker process per core.
As well as monitoring NGINX in real time, NGINX Amplify detects configuration settings that might be hurting performance. In the following figure, NGINX Amplify reports that NGINX is not buffering responses from proxied servers, which potentially degrades performance and has other negative side effects. NGINX Amplify explains in detail why this configuration is not recommended and even provides alternate configurations that can actually help performance.
NGINX Amplify further identifies potential security issues related to NGINX configuration and provides recommendations for fixing them, as in the following example.
NGINX Amplify Sends Timely Alerts
The Alerts tab is where you can set up custom alerts. When a configured condition occurs, NGINX Amplify emails you details of the alert.
In this example, NGINX Amplify emails [email protected] when any system’s CPU goes over 95% utilization for 5 or more minutes. You can designate any email address, for example your PagerDuty email routing. After the initial alert, NGINX Amplify sends digest messages every 30 minutes until all errors are cleared.
NGINX Amplify provides in‑depth monitoring of NGINX and NGINX Plus as well as configuration guidance. Based on static analysis of your NGINX configuration files, NGINX Amplify recommends changes designed to improve the performance and security of your application delivery with best practices developed by the engineers who create NGINX.
To learn more about NGINX Amplify, please view the NGINX Amplify documentation on GitHub.
Editor – NGINX Amplify is now in public beta.
In addition to the documentation on GitHub, check out the posts about NGINX Amplify on our blog. For a demo, watch our on‑demand webinar, Improve App Performance & Reliability with NGINX Amplify.