详解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 中的内存泄露模式
Aug 13 Javascript
JQuery 遮罩层实现(mask)实现代码
Jan 09 Javascript
关于javascript中this关键字(翻译+自我理解)
Oct 20 Javascript
将字符串转换成gb2312或者utf-8编码的参数(js版)
Apr 10 Javascript
中文路径导致unitpngfix.js不正常的解决方法
Jun 26 Javascript
将两个div左右并列显示并实现点击标题切换内容
Oct 22 Javascript
js倒计时简单实现方法
Dec 17 Javascript
javascript超过容器后显示省略号效果的方法(兼容一行或者多行)
Jul 14 Javascript
js判断传入时间和当前时间大小实例(超简单)
Jan 11 Javascript
angular6的table组件开发的实现示例
Dec 26 Javascript
VUE 自定义组件模板的方法详解
Aug 30 Javascript
Nuxt.js实现一个SSR的前端博客的示例代码
Sep 06 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文档的代码
2010/04/12 PHP
PHP后台实现微信小程序登录
2018/08/03 PHP
js右键菜单效果代码
2007/07/21 Javascript
jquery.validate使用攻略 第三部
2010/07/01 Javascript
JQuery里选择超链接的实现代码
2011/05/22 Javascript
19个很有用的 JavaScript库推荐
2011/06/27 Javascript
关于textarea提交的内容无法换行的解决办法
2013/04/09 Javascript
jQuery之排序组件的深入解析
2013/06/19 Javascript
使用Jquery实现点击文字后变成文本框且可修改
2013/09/21 Javascript
js实现幻灯片效果(基于jquery插件)
2013/11/05 Javascript
javascript省市区三级联动下拉框菜单实例演示
2015/11/29 Javascript
Javascript中判断一个值是否为undefined的方法详解
2016/09/28 Javascript
详解微信小程序开发之下拉刷新 上拉加载
2016/11/24 Javascript
AngulerJS学习之按需动态加载文件
2017/02/13 Javascript
JS实现一个简单的日历
2017/02/22 Javascript
angular使用post、get向后台传参的问题实例
2017/05/27 Javascript
使用Bootstrap和Vue实现用户信息的编辑删除功能
2017/10/25 Javascript
Vue.js划分组件的方法
2017/10/29 Javascript
js实现GIF图片的分解和合成
2019/10/24 Javascript
js实现漂亮的星空背景
2019/11/01 Javascript
vue 解决uglifyjs-webpack-plugin打包出现报错的问题
2020/08/04 Javascript
js仿京东放大镜效果
2020/08/09 Javascript
js实现可爱的气泡特效
2020/09/05 Javascript
在DigitalOcean的服务器上部署flaskblog应用
2015/12/19 Python
Python分治法定义与应用实例详解
2017/07/28 Python
用于业余项目的8个优秀Python库
2018/09/21 Python
pycharm远程开发项目的实现步骤
2019/01/20 Python
python定时按日期备份MySQL数据并压缩
2019/04/19 Python
pytorch掉坑记录:model.eval的作用说明
2020/06/23 Python
使用分层画布来优化HTML5渲染的教程
2015/05/08 HTML / CSS
EJB timer的种类
2014/10/28 面试题
卫生厅领导班子党的群众路线教育实践活动整改措施
2014/09/20 职场文书
铣工实训报告
2014/11/05 职场文书
婚庆主持词大全
2015/06/30 职场文书
学校少先队工作总结
2015/08/12 职场文书
只需要100行Python代码就可以实现的贪吃蛇小游戏
2021/05/27 Python