详解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 相关文章推荐
(推荐一个超好的JS函数库)S.Sams Lifexperience ScriptClassLib
Apr 29 Javascript
JavaScript几种形式的树结构菜单
May 10 Javascript
基于jQuery的仿flash的广告轮播
Nov 05 Javascript
利用js的Node遍历找到repeater的一个字段实例介绍
Apr 25 Javascript
jQuery将所有被选中的checkbox某个属性值连接成字符串的方法
Jan 24 Javascript
jQuery oLoader实现的加载图片和页面效果
Mar 14 Javascript
Jquery代码实现图片轮播效果(一)
Aug 12 Javascript
基于jquery实现在线选座订座之影院篇
Aug 24 Javascript
深入浅析JavaScript中数据共享和数据传递
Apr 25 Javascript
js 原型对象和原型链理解
Feb 09 Javascript
react项目实践之webpack-dev-serve
Sep 14 Javascript
elementUI中Table表格问题的解决方法
Dec 04 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删除字符串末尾子字符,删除开始字符,删除两端字符(实现代码)
2013/06/27 PHP
php smarty模板引擎的6个小技巧
2014/04/24 PHP
PHP使用array_fill定义多维数组的方法
2015/03/18 PHP
php源码分析之DZX1.5字符串截断函数cutstr用法
2015/06/17 PHP
php+MySQL实现登录时验证登录名和密码是否正确
2016/05/10 PHP
基于PHP+Mysql简单实现了图书购物车系统的实例详解
2020/08/06 PHP
JavaScript基本概念初级讲解论坛贴的学习记录
2009/02/22 Javascript
JavaScript DOM学习第八章 表单错误提示
2010/02/19 Javascript
js和jquery对dom节点的操作(创建/追加)
2013/04/21 Javascript
Javascript设计模式之观察者模式的多个实现版本实例
2015/03/03 Javascript
jquery实现的仿天猫侧导航tab切换效果
2015/08/24 Javascript
基于js实现微信发送好友如何分享到朋友圈、微博
2015/11/30 Javascript
浅析angularJS中的ui-router和ng-grid模块
2016/05/20 Javascript
JavaScript基于原型链的继承
2016/06/22 Javascript
深入分析node.js的异步API和其局限性
2016/09/05 Javascript
vue.js select下拉框绑定和取值方法
2018/03/03 Javascript
mockjs+vue页面直接展示数据的方法
2018/12/19 Javascript
Vue拖拽组件列表实现动态页面配置功能
2019/06/17 Javascript
Vue.js仿Select下拉框效果
2020/02/18 Javascript
[32:30]夜魇凡尔赛茶话会 第一期01:谁是卧底
2021/03/11 DOTA
Python中用于检查英文字母大写的isupper()方法
2015/05/19 Python
python3 unicode列表转换为中文的实例
2018/10/26 Python
python后端接收前端回传的文件方法
2019/01/02 Python
python3+PyQt5 使用三种不同的简便项窗口部件显示数据的方法
2019/06/17 Python
用python wxpy管理微信公众号并利用微信获取自己的开源数据
2019/07/30 Python
在Pytorch中使用样本权重(sample_weight)的正确方法
2019/08/17 Python
django 框架实现的用户注册、登录、退出功能示例
2019/11/28 Python
Python实现将蓝底照片转化为白底照片功能完整实例
2019/12/13 Python
美国休闲服装品牌:Express
2016/09/24 全球购物
2014年入党积极分子党课学习心得体会模板
2014/04/03 职场文书
中学生国旗下讲话稿
2014/04/26 职场文书
2015届大学生就业推荐表自我评价
2014/09/27 职场文书
2015年质量月活动总结报告
2015/03/27 职场文书
2016会计专业自荐信范文
2016/01/28 职场文书
小学英语教学反思范文
2016/02/15 职场文书
如何使用Python提取Chrome浏览器保存的密码
2021/06/09 Python