NGINX.COM

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.

Sign up today to try NGINX Amplify.

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 main dashboard for NGINX Amplify reports the metrics it gathers while monitoring NGINX
NGINX Amplify gives you a dashboard overview when you first log in

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.

NGINX Amplify pullout toolbar for monitoring NGINX in detail
At-a-glance statistics on the NGINX Amplify Systems 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.

NGINX Amplify provides configuration advice as well as monitoring NGINX in real time
NGINX Amplify analyzes your NGINX configuration

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.

NGINX Amplify suggests making changes to the worker_processes directive
NGINX Amplify suggests you have NGINX automatically create one 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 detects configurations that may hurt performance
NGINX Amplify suggests fixes for potential performance issues

NGINX Amplify further identifies potential security issues related to NGINX configuration and provides recommendations for fixing them, as in the following example.

NGINX Amplify recommends restricting access to stub_status
NGINX Amplify suggests allowing access to statistics only from the local machine

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.

NGINX Amplify will email you when CPU utilization is too high
NGINX Amplify can email you when something has gone wrong

In this example, NGINX Amplify emails me@example.com 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.

Summary

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.

Monitoring Highly Dynamic and Distributed Systems with NGINX Amplify

Cover image

Overcome challenges in collecting logs and metrics and acting on the results.

关于作者

Andrew Alexeev

Co-founder, Product Owner for NGINX Amplify

Andrew Alexeev is a co-founder of NGINX Inc, and currently owns the Amplify project.
Prior to joining NGINX Inc, Andrew worked for service providers in telecom, and enterprise IT sectors.

关于 F5 NGINX

F5, Inc. 是备受欢迎的开源软件 NGINX 背后的商业公司。我们为现代应用的开发和交付提供一整套技术。我们的联合解决方案弥合了 NetOps 和 DevOps 之间的横沟,提供从代码到用户的多云应用服务。访问 nginx-cn.net 了解更多相关信息。