Node.js项目APM监控之New Relic
现在上一个项目,如果没有APM监控服务或应用的运行性能参数,等于是一架没有盲降系统的飞机正在盲降,结果会很悲催。出现了访问失效等问题时,都很难判定是性能瓶颈还是一个藏的深的bug,汇报的时候一顿眼晕,这样的结果肯定是要被人分分钟的各种撕。
目前还没有像样的给node.js项目应用的APM开源项目,暂且先羡慕嫉妒下给java用的PinPoint。
不用开源的就用专业的APM提供商的产品,先解决问题,国内有很多专业提供商,也是不错。
国外的New Relic也是被推荐的一家,集成进node.js特别方便,监控功能齐全。
创建APM监控
要使用的话,首先是去首页注册一个账户,注册完后就会显示一个“Get started with New Relic”页面,在里面选择node.js。
然后按照页面上的步骤一步一步配置。

主要过程:
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”概况页面。

其中:
Web transactions time:这里能看到不同层面的交互时间,可以看图标下方的色块代表不同的含义,比较有用的就是响应时间。
Apdex score:应用性能指数,就是一打分,蓝色区域表示最好,黄色区域最差。
Transactions:表示各个交互的处理时间,最耗时的在最上,从这里能看清哪个url的访问是耗时最长的,可以到Transactions页面中详细查看交互性能展示。
Error rate:错误率。
End
Node.js项目APM监控之New Relic的更多相关文章
- [Node.js] Node.js项目的持续集成
原文地址:http://www.moye.me/2016/03/03/nodejs_ci_by_jenkins 引子 持续集成 (Continuous Integration,简称CI)是一种软件工程 ...
- Node.js 数据库实时监控库 node-dbmon
node-dbmon 是一个 Node.js 数据库实时监控库,如果你希望在数据库表数据更改后,或者是文件修改后能更新 GUI,那么这个库正好适合你. https://github.com/strap ...
- WebStorm中Node.js项目配置教程(1)——创建项目
Node.js绝对是一个web开发的热点话题,作为web神器的WebStorm也是开发Node.js的佼佼者. 接下来就Node.js项目在WebStorm的配置操作就行详细的讲解,首先是创建项目.两 ...
- 如何线上部署node.js项目
来源:http://blog.csdn.net/chenlinIT/article/details/73343793 前言 最近工作不是很忙,在空闲时间学习用node+express搭建自己的个人博客 ...
- Node.js项目拆包工程化
背景 在我们开发的过程中,经常会遇到这样的问题,开发完了一些代码或者一个接口,别的小伙伴过来问你,代码可不可以给他复用,接口可以给他调用.这说明代码的复用和抽象对团队协作是很重要的.举个例子,如下图 ...
- 基于 Token 的身份验证:JSON Web Token(附:Node.js 项目)
最近了解下基于 Token 的身份验证,跟大伙分享下.很多大型网站也都在用,比如 Facebook,Twitter,Google+,Github 等等,比起传统的身份验证方法,Token 扩展性更强, ...
- 15个Node.js项目列表
前言: Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台,是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascri ...
- Node.JS 项目打包 JXCore
哈哈,又回来了 当你开发完成了Node.JS项目,你应该需要打包发行吧 好,JXCore就是干这个的啦! 嗯,可能你会这样来安装 1. curl http://jxcore.com/xil.sh | ...
- Node.js 项目的配置文件
在 Node.js 中可以通过process.env来访问当前的环境变量信息,比如: { PATH: '/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin', T ...
随机推荐
- [TPYBoard - Micropython 之会python就能做硬件 9] 五分种学会用TPYBoard V102 制作避障小车(升级版)
转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 欢迎加入讨论群 64770604 感谢山东萝卜电子科技公司授权 一.实验器材 1.TPYboard V102板 ...
- 部署在服务器中的WebService
1.继上篇之后,我把我的WebService部署在了比较小的Tomcat中,首先要把Jax-ws.jar架包放在lib里面 2.在我的WEB-INF里面增加了一个xml文件:sun-jaxws.xml ...
- [.NET] 一步步打造一个简单的 MVC 网站 - BooksStore(一)
一步步打造一个简单的 MVC 网站 - BooksStore(一) 本系列的 GitHub地址:https://github.com/liqingwen2015/Wen.BooksStore 简介 主 ...
- js获取url中的参数方法
直接调用函数即可,函数如下: function getURLParam(name) { return decodeURIComponent((new RegExp('[?|&]' + name ...
- 老李分享:webservice是什么?2
web service 组件 基本的 web service 平台是 XML + HTTP.所有标准的 web service 使用以下组件: SOAP(简单对象访问协议) UDDI(通用描述.发现与 ...
- JAVA加密算法系列-DESCoder
package ***; import java.security.Key; import java.security.SecureRandom; import javax.crypto.Cipher ...
- 上传图片转为base64格式预览并压缩图片(不兼容IE9以下浏览器,兼容移动端ios,android)
前些天公司要求在微信移动端做上传图片并预览的功能,要求能够调用摄像头拍照并立即预览. 在网上搜了一些方法,开始自己写了个简单的功能实现代码.结果发现移动端拍照出来的图片动不动就2M+,又因为要批量上传 ...
- (读书笔记)函数参数浅析-JavaScript高级程序设计(第3版)
ECMAScript函数不介意传递的参数个数,因为在其内部是用一个数组进行表示的.在函数体内可以通过arguments对象来访问这个参数数组,就像我们正常访问数组一样处理. arguments对象只是 ...
- 几个地图(高德、百度、Apple、Google)URL API
移动应用中,如何在自己的App中调起第三方的原生地图App,并显示相关的信息,如显示指定的一个坐标位置,显示一个起点到终点的路线查询,等等. 目前几个主要的地图商都提供了自己的App通过URL调用的形 ...
- Android Weekly Notes Issue #253
Android Weekly Issue #253 April 16th, 2017 Android Weely Issue #253. 本期内容包括: Android O新推出的自定义字体支持; 用 ...