摘要:左邊側邊欄分為三個組,分別為監控數據,事件和報告。從接到請求到響應處理完成的過程為稱為一次事務。針對應用,還提供性能監控數據,包括內存使用,線程數等等。
New Relic性能監控(二)應用監控APM
2018-04-12 瑯琊書生本系列文章基于公司使用New Relic的經驗,鑒于國內較少有這方面的文章,因此把我工作中了解到的知識分享給大家,希望可以給需要的朋友帶來幫助。
上期文章我們對New Relic的監控產品組成做了整體的介紹,今天我們主要來介紹下服務端應用監控產品New Relic APM。
什么是APMAPM全稱是Application Performance Management,即應用程序性能監控。APM可以全方位監控系統運行狀態,能夠讓我們獲取詳細的數據,包括系統響應時間,吞吐量,定位緩慢的事務,找到應用的瓶頸。
APM原理New Relic APM目前支持以下七種語言: Ruby, Java, Node.js, PHP, .NET, Python, Go,有興趣的朋友可以在官方網站查到如何啟用New Relic APM。這里以java為例。New Relic提供了一個java agent的jar包。在應用程序啟動時,指定加載該agent,并做好相應的設置,New Relic就可以監控你的java應用,并定期將收集到數據上報到New Relic的服務器。
可以看到,New Relic這種非侵入式的應用監控非常易于使用。事實上,除了Go語言之外,其他支持的六種語言都是以這種agent的方式實現監控。Go比較特殊。由于Go是編譯成本地代碼(不同于java的字節碼之類有中間代碼存在的語言),所以需要使用者使用New Relic提供的Go SDK,在代碼中自行植入監控代碼。
APM并不是一個新鮮的東西,早在很多年前就已經存在。那么是什么使得New Relic勝出呢?答案是Saas。近幾年云計算的發展迅速,越來越多的應用正在開始以服務的方式提供。早先的APM使用非常不便,用戶需要本地部署服務器用以存放數據,被監控的應用要保證正確的配置以便能夠將數據上傳;還需要組建數據分析團隊,針對收集到的數據,結合應用的業務場景作出具體的分析工作。這些工作都要耗費很多的資源。New Relic把這一切簡化,以服務的方式提供APM功能。用戶只需要加載對應語言的agent,就能夠自動監控應用,上報數據,分析結果等。所有的工作都有New Relic提供的工具來完成。
APM采集的數據分析
圖 1: New Relic APM工作模式
圖二為New Relic上某一應用的APM主頁。
圖2: 某一應用的APM頁面
該頁面分為兩大塊:左邊的菜單欄和右側的圖表。
左邊側邊欄分為三個組,分別為監控數據,事件和報告。
監控數據是New Relic收集到的數據匯總。New Relic可以檢測到應用與其他服務之間的關聯和依賴關系,包括數據庫和外部依賴。這里有個非常重要的概念:事務(Transaction)。這里的事務并非是數據庫事務,而是應用對一次請求的處理。從接到請求到響應處理完成的過程為稱為一次事務。New Relic能夠精確的監控到一次事務中耗費在各個階段的時間。在圖二中,黃色部分為數據庫處理時間,淺藍色為JVM中耗費的時間。通過這些數據我們能清楚的了解不同的事務在處理過程中的瓶頸所在。比如有的事務在數據庫端要耗費大量時間,意味著有可能需要作優化查詢。
New Relic還可以列出每個事務耗費的時間,圖三為最為耗時的事務列表:
圖三:事務列表
各事務按所耗費的時間多少排序,讓我們能夠了解最為耗費時間的處理流程,尋找可以優化的區域。每一個事務都有非常詳細的數據。圖四為某一事務的詳細時間話費統計。
圖四:精細的事務時間耗費統計
圖中可以看出,該事務在數據庫查詢操作上耗費了大量的時間(圖中棕色部分)。而下方的表格則給出了具體的數據,數據庫查詢 Postgres xyf_size_offset select 是耗時最久的部分,占整個事務一半多的時間。那么整個應用所有的數據庫操作在性能表現上是什么情況呢?圖五就是這方面的統計。
圖五:數據庫訪問性能統計
我們發現,剛才的那個數據庫操作不僅是那個事務中性能最差的,在所有的數據庫操作中都是耗時最久的。
針對java應用,APM還提供JVM性能監控數據,包括內存使用,線程數等等。
APM支持告警設置。用戶可以設置監控指標和期望的性能表現。一旦指標在一定時間內未能達到要求,則自動發出告警。告警可以發送到郵箱或者其他一些即時通訊工具,使得運維人員能及時獲知系統異常情況。
總結
圖六:告警
New Relic APM使用方便,數據全面,數據展示詳細,非常值得一試。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/69120.html
摘要:性能概覽下圖為一個監控的的性能概覽頁面該頁面主要包含下面幾個部分的內容頁面加載時間曲線得分圖各瀏覽器的吞吐量會話追蹤,錯誤,以及響應時間。吞吐量吞吐量是按瀏覽器的類型繪制的,單位是每分鐘瀏覽量。 New Relic性能監控(三)瀏覽器端監控 2018-05-02 瑯琊書生本系列文章基于公司使用New Relic的經驗,鑒于國內較少有這方面的文章,因此把我工作中了解到的知識分享給大家,希...
摘要:性能概覽下圖為一個監控的的性能概覽頁面該頁面主要包含下面幾個部分的內容頁面加載時間曲線得分圖各瀏覽器的吞吐量會話追蹤,錯誤,以及響應時間。吞吐量吞吐量是按瀏覽器的類型繪制的,單位是每分鐘瀏覽量。 New Relic性能監控(三)瀏覽器端監控 2018-05-02 瑯琊書生本系列文章基于公司使用New Relic的經驗,鑒于國內較少有這方面的文章,因此把我工作中了解到的知識分享給大家,希...
摘要:性能概覽下圖為一個監控的的性能概覽頁面該頁面主要包含下面幾個部分的內容頁面加載時間曲線得分圖各瀏覽器的吞吐量會話追蹤,錯誤,以及響應時間。吞吐量吞吐量是按瀏覽器的類型繪制的,單位是每分鐘瀏覽量。 New Relic性能監控(三)瀏覽器端監控 2018-05-02 瑯琊書生本系列文章基于公司使用New Relic的經驗,鑒于國內較少有這方面的文章,因此把我工作中了解到的知識分享給大家,希...
摘要:性能監控一概覽瑯琊書生本系列文章基于公司使用的經驗,鑒于國內較少有這方面的文章,因此把我工作中了解到的知識分享給大家,希望可以給需要的朋友帶來幫助。提供了端到端的監控能力,從前端頁面性能,到后臺服務端的響應速度,都有非常詳盡的監控數據。 New Relic性能監控(一)概覽 2018-04-12 瑯琊書生本系列文章基于公司使用New Relic的經驗,鑒于國內較少有這方面的文章,因此把...
摘要:性能監控一概覽瑯琊書生本系列文章基于公司使用的經驗,鑒于國內較少有這方面的文章,因此把我工作中了解到的知識分享給大家,希望可以給需要的朋友帶來幫助。提供了端到端的監控能力,從前端頁面性能,到后臺服務端的響應速度,都有非常詳盡的監控數據。 New Relic性能監控(一)概覽 2018-04-12 瑯琊書生本系列文章基于公司使用New Relic的經驗,鑒于國內較少有這方面的文章,因此把...
閱讀 1391·2023-04-26 03:04
閱讀 2325·2019-08-30 15:44
閱讀 3727·2019-08-30 14:15
閱讀 3507·2019-08-27 10:56
閱讀 2703·2019-08-26 13:53
閱讀 2616·2019-08-26 13:26
閱讀 3075·2019-08-26 12:11
閱讀 3609·2019-08-23 18:21