詳解Node.js項(xiàng)目APM監(jiān)控之New Relic
現(xiàn)在上一個(gè)項(xiàng)目,如果沒有APM監(jiān)控服務(wù)或應(yīng)用的運(yùn)行性能參數(shù),等于是一架沒有盲降系統(tǒng)的飛機(jī)正在盲降,結(jié)果會(huì)很悲催。出現(xiàn)了訪問失效等問題時(shí),都很難判定是性能瓶頸還是一個(gè)藏的深的bug,匯報(bào)的時(shí)候一頓眼暈,這樣的結(jié)果肯定是要被人分分鐘的各種撕。
目前還沒有像樣的給node.js項(xiàng)目應(yīng)用的APM開源項(xiàng)目,暫且先羨慕嫉妒下給java用的PinPoint。
不用開源的就用專業(yè)的APM提供商的產(chǎn)品,先解決問題,國內(nèi)有很多專業(yè)提供商,也是不錯(cuò)。
國外的New Relic也是被推薦的一家,集成進(jìn)node.js特別方便,監(jiān)控功能齊全。
創(chuàng)建APM監(jiān)控
要使用的話,首先是去首頁注冊一個(gè)賬戶,注冊完后就會(huì)顯示一個(gè)“Get started with New Relic”頁面,在里面選擇node.js。
然后按照頁面上的步驟一步一步配置。

主要過程:
1.記下分配給你的license key。
2.在項(xiàng)目中安裝newrelic庫。
npm install newrelic --save
3.將node_modules/newrelic下的newrelic.js復(fù)制到項(xiàng)目的根目錄下,也就是和node_modules同級(jí)。
4.配置newrelic.js文件。
/**
* New Relic 客戶配置文件.
*
* 參考 lib/config.defaults.js 獲得更多的配置.
*/
exports.config = {
/**
* 應(yīng)用名稱數(shù)組,就寫項(xiàng)目的名字或者喜歡的任意名字
*/
app_name : ['My Application'],
/**
* 你的 New Relic 授權(quán) key
*/
license_key : 'license key here',
logging : {
/**
* 日志等級(jí). 'trace' 對(duì)于 New Relic 診斷問題時(shí)是最有用的
* 'info' 級(jí)別以及更高的應(yīng)該應(yīng)用于生產(chǎn)應(yīng)用
*/
level : 'info'
}
};
5.在啟動(dòng)腳本的第一行加入代碼
require('newrelic');
6.點(diǎn)擊“l(fā)istening your application”,開始監(jiān)聽?wèi)?yīng)用并收數(shù)據(jù)。
7.運(yùn)行項(xiàng)目,5分鐘后,進(jìn)到你的APM控制臺(tái)中,會(huì)看到一個(gè)已a(bǔ)pplication name命名的監(jiān)控項(xiàng),進(jìn)去即能看到該項(xiàng)目的性能監(jiān)控?cái)?shù)據(jù)表。
常用
因?yàn)槭敲赓M(fèi)版,只能看24小時(shí)的數(shù)據(jù),想延長時(shí)間和一些高級(jí)功能就是付費(fèi)版的節(jié)奏了。
最常用的就是“Overview”概況頁面。

其中:
Web transactions time:這里能看到不同層面的交互時(shí)間,可以看圖標(biāo)下方的色塊代表不同的含義,比較有用的就是響應(yīng)時(shí)間。
Apdex score:應(yīng)用性能指數(shù),就是一打分,藍(lán)色區(qū)域表示最好,黃色區(qū)域最差。
Transactions:表示各個(gè)交互的處理時(shí)間,最耗時(shí)的在最上,從這里能看清哪個(gè)url的訪問是耗時(shí)最長的,可以到Transactions頁面中詳細(xì)查看交互性能展示。
Error rate:錯(cuò)誤率。
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
nodejs 十六進(jìn)制字符串型數(shù)據(jù)與btye型數(shù)據(jù)相互轉(zhuǎn)換
這篇文章主要介紹了nodejs 十六進(jìn)制字符串型數(shù)據(jù)與btye型數(shù)據(jù)相互轉(zhuǎn)換,需要的朋友可以參考下2018-07-07
socket.io學(xué)習(xí)教程之深入學(xué)習(xí)篇(三)
這篇文章更加深入的給大家介紹了socket.io的相關(guān)資料,之前已經(jīng)介紹了socket.io的基本教程和應(yīng)用,本文更為深入的來介紹下socket.io的使用,需要的朋友可以參考借鑒,下面來一起看看吧。2017-04-04
Nodejs-cluster模塊知識(shí)點(diǎn)總結(jié)及實(shí)例用法
在本篇文章里小編給大家整理的是一篇關(guān)于Nodejs-cluster模塊知識(shí)點(diǎn)總結(jié)及實(shí)例用法,有興趣的朋友們可以跟著學(xué)習(xí)下。2021-12-12
nodejs實(shí)現(xiàn)郵箱發(fā)送驗(yàn)證碼功能
開發(fā)個(gè)人網(wǎng)站時(shí),注冊頁面可以使用郵箱驗(yàn)證,于是記錄一下如何用nodejs/express服務(wù)器實(shí)現(xiàn)郵箱發(fā)送驗(yàn)證碼,不僅可以在郵箱注冊時(shí)使用,還可以拓展用于各種安全驗(yàn)證,本文給大家介紹了使用nodejs實(shí)現(xiàn)郵箱發(fā)送驗(yàn)證碼功能,需要的朋友可以參考下2024-07-07
Nodejs實(shí)現(xiàn)內(nèi)網(wǎng)穿透服務(wù)
很多人都不知道什么是內(nèi)網(wǎng)穿透,就是公網(wǎng)客戶端,可以訪問局域網(wǎng)內(nèi)的服務(wù),本文詳細(xì)的介紹了原理以及實(shí)現(xiàn),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-05-05

