详解Node.js项目APM监控之New Relic


Posted in Javascript onMay 12, 2017

现在上一个项目,如果没有APM监控服务或应用的运行性能参数,等于是一架没有盲降系统的飞机正在盲降,结果会很悲催。出现了访问失效等问题时,都很难判定是性能瓶颈还是一个藏的深的bug,汇报的时候一顿眼晕,这样的结果肯定是要被人分分钟的各种撕。

目前还没有像样的给node.js项目应用的APM开源项目,暂且先羡慕嫉妒下给java用的PinPoint。

不用开源的就用专业的APM提供商的产品,先解决问题,国内有很多专业提供商,也是不错。

国外的New Relic也是被推荐的一家,集成进node.js特别方便,监控功能齐全。

创建APM监控

要使用的话,首先是去首页注册一个账户,注册完后就会显示一个“Get started with New Relic”页面,在里面选择node.js。

然后按照页面上的步骤一步一步配置。

详解Node.js项目APM监控之New Relic

 主要过程:

1.记下分配给你的license key。

2.在项目中安装newrelic库。

npm install newrelic --save

3.将node_modules/newrelic下的newrelic.js复制到项目的根目录下,也就是和node_modules同级。

4.配置newrelic.js文件。

/**
 * New Relic 客户配置文件.
 *
 * 参考 lib/config.defaults.js 获得更多的配置.
 */
exports.config = {
 /**
  * 应用名称数组,就写项目的名字或者喜欢的任意名字
  */
 app_name : ['My Application'],
 /**
  * 你的 New Relic 授权 key
  */
 license_key : 'license key here',
 logging : {
  /**
   * 日志等级. 'trace' 对于 New Relic 诊断问题时是最有用的
   * 'info' 级别以及更高的应该应用于生产应用
   */
  level : 'info'
 }
};

5.在启动脚本的第一行加入代码

require('newrelic');

6.点击“listening your application”,开始监听应用并收数据。

7.运行项目,5分钟后,进到你的APM控制台中,会看到一个已application name命名的监控项,进去即能看到该项目的性能监控数据表。

 常用

因为是免费版,只能看24小时的数据,想延长时间和一些高级功能就是付费版的节奏了。

最常用的就是“Overview”概况页面。

详解Node.js项目APM监控之New Relic

 其中:

Web transactions time:这里能看到不同层面的交互时间,可以看图标下方的色块代表不同的含义,比较有用的就是响应时间。

Apdex score:应用性能指数,就是一打分,蓝色区域表示最好,黄色区域最差。

Transactions:表示各个交互的处理时间,最耗时的在最上,从这里能看清哪个url的访问是耗时最长的,可以到Transactions页面中详细查看交互性能展示。

Error rate:错误率。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript让IE浏览器event对象符合W3C DOM标准
Nov 24 Javascript
jQuery javaScript捕获回车事件(示例代码)
Nov 07 Javascript
javascript不同类型数据之间的运算的转换方法
Feb 13 Javascript
Jquery在指定DIV加载HTML示例代码
Feb 17 Javascript
jQuery异步加载数据并添加事件示例
Aug 24 Javascript
JavaScript中的迭代器和生成器详解
Oct 29 Javascript
JS实现网页背景颜色与select框中颜色同时变化的方法
Feb 27 Javascript
详解node服务器中打开html文件的两种方法
Sep 18 Javascript
删除table表格行的实例讲解
Sep 21 Javascript
vue如何使用async、await实现同步请求
Dec 09 Javascript
three.js利用射线Raycaster进行碰撞检测
Mar 12 Javascript
手把手教您实现react异步加载高阶组件
Apr 07 Javascript
微信小程序实现瀑布流布局与无限加载的方法详解
May 12 #Javascript
WebSocket实现简单客服聊天系统
May 12 #Javascript
vue2.0结合Element实现select动态控制input禁用实例
May 12 #Javascript
详解微信小程序 相对定位和绝对定位
May 11 #Javascript
Vue通过input筛选数据
Oct 26 #Javascript
微信小程序 action-sheet 反馈上拉菜单简单实例
May 11 #Javascript
jQuery遮罩层实例讲解
May 11 #jQuery
You might like
php 批量生成html,txt文件的实现代码
2013/06/26 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(一)
2014/06/23 PHP
使用PHP生成PDF方法详解
2015/01/23 PHP
利用Laravel事件系统如何实现登录日志的记录详解
2017/05/20 PHP
SCP远程VPS快速搬家和WDCP升级php5.3安装memcached和eaccelerator教程
2017/07/27 PHP
Laravel学习教程之View模块详解
2017/09/18 PHP
PHP长网址与短网址的实现方法
2017/10/13 PHP
关于viewport,Ext.panel和Ext.form.panel的关系
2009/05/07 Javascript
JQuery 1.3.2以上版本中出现pareseerror错误的解决方法
2011/01/11 Javascript
JavaScript匿名函数与委托使用示例
2014/07/22 Javascript
jQuery实现倒计时按钮功能代码分享
2014/09/03 Javascript
jquery中toggle函数交替使用问题
2015/06/22 Javascript
Bootstrap的Refresh Icon也spin起来
2016/07/13 Javascript
Mongoose学习全面理解(推荐)
2017/01/21 Javascript
jquery实现简单实用的轮播器
2017/05/23 jQuery
js实现轮播图的两种方式(构造函数、面向对象)
2017/09/30 Javascript
浅谈jquery中ajax跨域提交的时候会有2次请求的问题
2017/11/10 jQuery
如何在Vue中使用CleaveJS格式化你的输入内容
2018/12/14 Javascript
JS Generator 函数的含义与用法实例总结
2020/04/08 Javascript
express异步函数异常捕获示例详解
2020/11/30 Javascript
使用python实现个性化词云的方法
2017/06/16 Python
Python数据结构与算法之使用队列解决小猫钓鱼问题
2017/12/14 Python
详解如何在python中读写和存储matlab的数据文件(*.mat)
2018/02/24 Python
python3+PyQt5实现柱状图
2018/04/24 Python
Python实现合并excel表格的方法分析
2019/04/13 Python
Python FFT合成波形的实例
2019/12/04 Python
python eventlet绿化和patch原理
2020/11/21 Python
大学生毕业自我评价范文分享
2013/11/07 职场文书
安全生产检查通报
2014/01/29 职场文书
企业安全生产演讲稿
2014/05/09 职场文书
宣传普通话标语
2014/06/27 职场文书
2015年车间安全管理工作总结
2015/05/13 职场文书
2015年乡镇纪委工作总结
2015/05/26 职场文书
证婚人婚礼致辞
2015/07/28 职场文书
python 批量压缩图片的脚本
2021/06/02 Python
win11怎么用快捷键锁屏? windows11锁屏的几种方法
2021/11/21 数码科技