详解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 相关文章推荐
JQuery入门——事件切换之toggle()方法应用介绍
Feb 05 Javascript
JS保存和删除cookie操作 判断cookie是否存在
Nov 13 Javascript
JavaScript中的对象的extensible属性介绍
Dec 30 Javascript
微信支付如何实现内置浏览器的H5页面支付
Sep 25 Javascript
阿里巴巴技术文章分享 Javascript继承机制的实现
Jan 14 Javascript
JS判断图片是否加载完成方法汇总(最新版)
May 13 Javascript
完美实现八种js焦点轮播图(上篇)
Jul 18 Javascript
React Form组件的实现封装杂谈
May 07 Javascript
微信小程序数据统计和错误统计的实现方法
Jun 26 Javascript
vue2.x 通过后端接口代理,获取qq音乐api的数据示例
Oct 30 Javascript
js实现时分秒倒计时
Dec 03 Javascript
vue 实现把路由单独分离出来
Aug 13 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中时间轴开发(刚刚、5分钟前、昨天10:23等)
2011/10/03 PHP
php实现在限定区域里自动调整字体大小的类实例
2015/04/02 PHP
CodeIgniter控制器之业务逻辑实例分析
2016/01/20 PHP
php微信开发之自定义菜单完整流程
2016/10/08 PHP
JavaScript中如何通过arguments对象实现对象的重载
2014/05/12 Javascript
js实现格式化金额,字符,时间的方法
2015/02/26 Javascript
JS获取及设置TextArea或input文本框选择文本位置的方法
2015/03/24 Javascript
jquery中ready()函数执行的时机和window的load事件比较
2015/06/22 Javascript
jquery实现像栅栏一样左右滑出式二级菜单效果代码
2015/08/24 Javascript
JavaScript实现移动端滑动选择日期功能
2016/06/21 Javascript
Easyui笔记2:实现datagrid多行删除的示例代码
2017/01/14 Javascript
JSON在Javascript中的使用(eval和JSON.parse的区别)详细解析
2017/09/05 Javascript
JS实现元素上下左右移动效果
2017/10/18 Javascript
AngularJS的$location使用方法详解
2017/10/19 Javascript
vue.js仿hover效果的实现方法示例
2019/01/28 Javascript
详解auto-vue-file:一个自动创建vue组件的包
2019/04/26 Javascript
Vue-cli 移动端布局和动画使用详解
2020/08/10 Javascript
详解webpack的clean-webpack-plugin插件报错
2020/10/16 Javascript
[26:24]完美副总裁、DOTA2负责人蔡玮专访:电竞如人生
2014/09/11 DOTA
Python实现列表转换成字典数据结构的方法
2016/03/11 Python
Python实现读取邮箱中的邮件功能示例【含文本及附件】
2017/08/05 Python
Pandas DataFrame数据的更改、插入新增的列和行的方法
2019/06/25 Python
python 的 openpyxl模块 读取 Excel文件的方法
2019/09/09 Python
Python 程序员必须掌握的日志记录
2020/08/17 Python
英国领先的独立时装店:Van Mildert
2019/10/28 全球购物
Java工程师面试集锦之Spring框架
2013/06/16 面试题
2014年采购工作总结
2014/11/20 职场文书
2014年村委会工作总结
2014/11/24 职场文书
2014年行风建设工作总结
2014/12/01 职场文书
欢迎词怎么写
2015/01/23 职场文书
交通肇事罪辩护词
2015/05/21 职场文书
2015年依法治校工作总结
2015/07/27 职场文书
2019个人工作计划书的格式及范文!
2019/07/04 职场文书
python 实现德洛内三角剖分的操作
2021/04/22 Python
python如何正确使用yield
2021/05/21 Python
Spring-cloud Config Server的3种配置方式
2021/09/25 Java/Android