In March, 2013 we released the first version of the “nginx web server” plug‑in for New Relic monitoring of the open source NGINX software and NGINX Plus. Since then, we’ve received lots of interest from users – we greatly appreciate it! The plug‑in continues to be one of the most popular New Relic plug‑ins, in spite of the few things that (we believe!) could be improved. If you don’t already have a New Relic account, sign up as a NewRelic “Friend with benefits”.

We selected Ruby as the base language for the original plug‑in, because the New Relic platform itself is written in Ruby, the API was not yet published, and many things were changing quickly.

Later, after the launch of the New Relic platform, we continued to work on adding a number of improvements based on users’ feedback and our own vision of how to improve the overall usability of the NGINX monitoring plug‑in, and realized the need for further changes.

What’s New?

Today, we are pleased to announce a major update of the NGINX plug‑in for New Relic, version 2.0, which includes the following changes:

  • The plug‑in is rewritten in Python. You no longer need to install Ruby.
  • The plug‑in is finally packaged. There are prebuilt packages for RHEL/CentOS‑based and Debian/Ubuntu‑based systems. An included init script enables you to easily set up autostart of the plug‑in.
  • There are two new sections in the live activity monitoring dashboard, for NGINX Plus customers:

    • Servers – Additional summary counters for virtual servers whose server configuration block includes the status_zone directive
    • Cache – Cumulative stats for all configured caches
  • Verbose logging is enabled by default.

Installation

Download the plug‑in and installation instructions.

Configuring the Plug‑In

The configuration file for the NGINX plug‑in is /etc/nginx-nr-agent/nginx-nr-agent.ini. The minimal configuration includes:

  • Your New Relic license key in the newrelic_license_key statement in the global section.

  • At least one source section. The name of the section is used in log entries only, and can contain almost any character string you want. Two parameters are required:

    • name – NGINX instance name in the New Relic UI.
    • url – Full URL to the corresponding instance. The plug‑in accepts source data in the format generated when the stub_status directive is included in the configuration of NGINX or NGINX Plus. It also supports the JSON‑formatted output generated when the status directive is included in an NGINX Plus configuration.

You can include the optional http_user and http_pass statements to set HTTP basic authentication credentials in cases where the corresponding location is protected by the NGINX auth_basic directive.

The default log file is /var/log/nginx-nr-agent.log.

Running the Plug‑In

You can manage the plug‑in with an init script. Run the service nginx-nr-agent command with the startstop, or status argument to start, stop, or display the status of the plug‑in, respectively.

When started from an init script, the plug‑in daemon runs as the nobody user.

You can start the plug‑in directly by running /usr/bin/nginx-nr-agent.py, with the following optional parameters:

  • -c--config – Path to configuration file
  • -p--pidfile> – Path to PID file
  • -f--foreground – Do not detach from terminal (useful for debugging)

If everything is working as expected, the plug‑in appears as a tab in the New Relic UI:

Dashboard Examples

Overview

The Overview tab displays the most basic metrics for the whole instance: number of active and idle connections, and request rate.

Connections

The Connections tab displays various metrics about client connections.

Requests

The Requests tab displays the number of requests currently being processed and the overall request rate.

Upstreams (NGINX Plus only)

The Upstreams tab displays detailed statistics about all configured upstream groups.

Servers (NGINX Plus only)

The Servers tab displays detailed statistics about all configured virtual server zones.

Cache (NGINX Plus only)

The Cache tab displays summary statistics for all configured caches.

What’s Next?

We plan to extend the plug‑in’s functionality with additional metrics for both NGINX and NGINX Plus, and your feedback is very important to us. Ideas, thoughts, questions? Let us know by commenting on this post.

Thanks for using NGINX and NGINX Plus!

To try NGINX Plus, start your free 30-day trial today or contact us.

Announcing the Updated NGINX and NGINX Plus Plug‑In for New Relic (Version 2)的更多相关文章

  1. Nginx之一:Nginx的编译安装

    一.Nginx简介 官方网址:http://nginx.org/ Nginx是由1994年毕业于俄罗斯国立莫斯科鲍曼科技大学的同学为俄罗斯rambler.ru公司开发的,开发工作最早从2002年开始, ...

  2. Nginx配置文件nginx.conf中文详解(转)

    ######Nginx配置文件nginx.conf中文详解##### #定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为等于CPU总核心数. worker_ ...

  3. 苹果下如果安装nginx,给nginx安装markdown第三方插件

    用brew install nginx 这样安装的是最新版的nginx, 但是在有些情况下,安装第三方插件需要特定的版本,更高一级的版本可能装不上. 它的原理是下载安装包进行自动安装,建立软链,这样就 ...

  4. Nginx research, nginx module development

    catalog . 初探nginx架构 . handler模块 . Nginx编译.安装.配置 . Hello World模块开发 1. 初探nginx架构 nginx在启动后,在unix系统中会以d ...

  5. 通过Nginx和Nginx Plus阻止DDoS攻击

    分布式拒绝服务攻击(DDoS)指的是通过多台机器向一个服务或者网站发送大量看似合法的数据包使其网络阻塞.资源耗尽从而不能为正常用户提供正常服务的攻击手段.随着互联网带宽的增加和相关工具的不断发布,这种 ...

  6. 解决Nginx: [error] open() "/usr/local/Nginx/logs/Nginx.pid

    重新启动服务器,访问web服务发现无法浏览啦!登陆服务器之后进到nginx使用./nginx -s reload重新读取配置文件,发现报nginx: [error] open() "/usr ...

  7. nginx: [error] invalid PID number "" in "/usr/local/nginx/logs/nginx.pid"

    iwangzheng.com tty:[0] jobs:[0] cwd:[/opt/nginx/conf] 12:45 [root@a02.cmsapi]$ /usr/local/nginx/sbin ...

  8. Nginx 报错: nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed (2: No such file or directory) 的解决方法

    今天测试域名访问不了,登陆 Linux(Ubuntu)重启Nginx: nginx -s reload 结果报错: nginx: [error] open() : No such file or di ...

  9. 解决nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed错误

    重新启动服务器,访问web服务发现无法浏览,登陆服务器之 后进到nginx使用./nginx -s reload重新读取配置文件,发现报nginx: [error] open() "/usr ...

随机推荐

  1. 异步加载图片以及Bitmap相关处理方法

    私类: // 异步更新Image private class GetImageTask extends AsyncTask<String, Void, Bitmap> { // 覆写的方法 ...

  2. [转]USDT与omniCore钱包

    本文转自:http://www.cnblogs.com/red-evil/p/10039740.html USDTUSDT,又称为泰达币,是由Tether公司在 2015年推出的一种与美元锚定的加密货 ...

  3. C#操作DataTable类

    一.DataTable简介 (1)构造函数 名称 说明 DataTable()  不带参数初始化DataTable 类的新实例 DataTable(string tableName) 用指定的表名初始 ...

  4. log4j-1.2.6升级到log4j-2.9.0

    0.工程是普通java web工程,不是maven工程.需要升级log4j 步骤发下: 1. 在build path中 移除项目对log4j-1.2.6.jar的引用,并物理删除log4j-1.2.6 ...

  5. oracle 汉字转化拼音函数

    FN_GETPY('中华人民共和国') -------------------------------------------------------------------------------- ...

  6. 《Redis开发与运维》读书笔记

    一.初始Redis 1.Redis特性与优点 速度快.redis所有数据都存放于内存:是用C语言实现,更加贴近硬件:使用了单线程架构,避免了多线程竞争问题 基于键值对的数据结构,支持的数据结构丰富.它 ...

  7. 程序员晋级CTO之路的8大准则

    推荐阅读: 大数据智慧平台落地方案 Nginx + 阿里云SSL + tomcat 实现https访问代理 永远别忘了TD 再确认测试代码前,先找别人帮你检查下是否无误.在别人做之前尽量检查出bug并 ...

  8. js canvas 转动时钟实例

    源码:https://pan.baidu.com/s/1R12MwZYs0OJw3OWKsc8WNw 样本:http://js.zhuamimi.cn/shizhong/ 我的百度经验:https:/ ...

  9. elementUI vue 页面加载的时候页面出现了黑字 页面优化处理 按钮弹出框文字

    elementUI 页面如果需要加载很多东西的时候, 自己定义的按钮或者弹出框dialog的文字就会显示在页面上, 一闪而过, 因此需要优化一下, elementUI 提供的loading有遮罩层, ...

  10. MyBatis 返回主键

    1,用于插入语句 2,传入对象 3,使用下面的属性即可 userGengratedKeys="true" keyProperty="orderId" keyCo ...