详解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 相关文章推荐
如何在指定的地方插入html内容和文本内容
Dec 23 Javascript
兼容Firefox的Javascript XSLT 处理XML文件
Dec 31 Javascript
使用VS开发 Node.js指南
Jan 06 Javascript
JavaScript Math.floor方法(对数值向下取整)
Jan 09 Javascript
JQuery中$.each 和$(selector).each()的区别详解
Mar 13 Javascript
EasyUI 中combotree 默认不能选择父节点的实现方法
Nov 07 Javascript
JavaScript中数组Array.sort()排序方法详解
Mar 01 Javascript
Canvas放置反弹效果随机图形(实例)
Aug 17 Javascript
基于vue组件实现猜数字游戏
May 28 Javascript
Vue动态获取width的方法
Aug 22 Javascript
更强大的vue ssr实现预取数据的方式
Jul 19 Javascript
vue插槽slot的简单理解与用法实例分析
Mar 14 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
WinXP + Apache +PHP5 + MySQL + phpMyAdmin安装全功略
2006/07/09 PHP
PHPlet在Windows下的安装
2006/10/09 PHP
在PHP模板引擎smarty生成随机数的方法和math函数详解
2014/04/24 PHP
PhpDocumentor 2安装以及生成API文档的方法
2014/05/21 PHP
CI(CodeIgniter)框架中的增删改查操作
2014/06/10 PHP
twig模板常用语句实例小结
2016/02/04 PHP
thinkphp3.2中实现phpexcel导出带生成图片示例
2017/02/14 PHP
利用php生成验证码
2017/02/23 PHP
PHP实现的注册,登录及查询用户资料功能API接口示例
2017/06/06 PHP
Thinkphp5行为使用方法汇总
2017/12/21 PHP
javascript实现客户端兼容各浏览器创建csv并下载的方法
2015/03/23 Javascript
详解JavaScript基于面向对象之继承
2015/12/13 Javascript
js仿百度登录页实现拖动窗口效果
2016/03/11 Javascript
全面了解构造函数继承关键apply call
2016/07/26 Javascript
Bootstrap基本样式学习笔记之表单(3)
2016/12/07 Javascript
AngularJS的$location使用方法详解
2017/10/19 Javascript
Angular 4.x+Ionic3踩坑之Ionic 3.x界面传值详解
2018/03/13 Javascript
vue form check 表单验证的实现代码
2018/12/09 Javascript
详解mpvue中小程序自定义导航组件开发指南
2019/02/11 Javascript
vue-cli webpack配置文件分析
2019/05/20 Javascript
Vue实现拖放排序功能的实例代码
2019/07/08 Javascript
JavaScript中变量提升机制示例详解
2019/12/27 Javascript
使用node.JS中的url模块解析URL信息
2020/02/06 Javascript
[01:49]一目了然!DOTA2DotA快捷操作对比第二弹
2014/05/16 DOTA
springboot配置文件抽离 git管理统 配置中心详解
2019/09/02 Python
Python socket模块ftp传输文件过程解析
2019/11/05 Python
Django异步任务线程池实现原理
2019/12/17 Python
FORZIERI澳大利亚站:全球顶级奢华配饰精品店
2016/12/31 全球购物
法人任命书范本
2014/06/04 职场文书
检讨书范文1000字
2015/01/28 职场文书
2015年食品安全宣传周活动总结
2015/07/09 职场文书
2016年社区党支部公开承诺书
2016/03/25 职场文书
如何撰写出一份完美的商业计划书?
2019/07/12 职场文书
致男子1500米运动员的广播稿
2019/11/08 职场文书
《悲惨世界》:比天空更广阔的是人的心灵
2020/01/16 职场文书
Windows下redis下载、redis安装及使用教程
2021/06/02 Redis