New Relic性能监控(一)概览

2018-04-12 琅琊书生

本系列文章基于公司使用New Relic的经验,鉴于国内较少有这方面的文章,因此把我工作中了解到的知识分享给大家,希望可以给需要的朋友带来帮助。

越来越多的软件产品正在以服务的方式发布。当应用上线后,我们希望对产品有持续的监控,在客户发现问题之前,能够感知系统的运行状态,健康状况,性能表现,以便快速应对系统故障,为客户提供持续不断的优质服务。New Relic的产品为解决这一问题提供了完整的解决方案。New Relic提供了端到端的监控能力,从前端页面性能,到后台服务端的响应速度,都有非常详尽的监控数据。

New Relic的监控平台组成

New Relic的监控产品覆盖了Web产品的整个技术栈。下图为其产品组成。

图 1: New Relic的产品组成

New Relic监控类别

  1. 浏览器端监控(Customer Experience)

    浏览器端监控收集被监控产品在用户的使用过程中产生的各种数据,如页面访问数据,页面加载性能,页面渲染速度等等。在这一类别中,New Relic提供了三个组件。

    • New Relic Browser

      面向产品最终用户,收集软件产品在前端的用户体验数据,并且提供了会话跟踪,JavaScript错误捕获,浏览器类型检测,用户地理信息收集等能力,使得我们能够详细了解产品在Web端的表现。

    • New Relic Synthetics

      一般用在测试环境。该产品利用New Relic分布在不同地理位置的服务器,通过自定义的页面访问和检测代码,测试产品在不同地区访问的表现,以便发现问题。

    • New Relic Mobile

      手机端产品,提供了手机APP使用监控数据。

  2. 服务端监控(APM)

    服务端监控是用来收集Web应用在服务器端的性能数据。该数据和客户端数据能够关联起来,使得分析完整的事物性能成为可能。其原理是利用插入到服务端程序的代理,来收集数据并汇集到New Relic位于全球各地的数据中心。目前支持多达七种编程语言,包括uby,Java, Node.js,PHP,.NET,Python, Go等,很好的覆盖了市面上大部分的Web应用。

  3. 基础架构监控(Infrastructure)

    基础架构监控是一个比较新的产品,其实际上是此前的服务器监控(Server Monitor)的升级替代产品。该产品利用运行在服务器上的监控进程,定期收集系统的性能数据,并汇报至New Relic服务器。所收集的数据极为详尽,包括CPU使用,磁盘IO及使用率,网络吞吐量,活动进程以及各自的CPU占用率等等。

New Relic的数据分析功能

  1. 统一的数据分析平台(Insight)

    在所有的数据之上,New Relic提供了一个统一的数据分析平台。用户可以利用该平台综合分析来自前端,服务端和基础架构端的数据,定位系统瓶颈,排查错误。该平台还提供了自己的查询语言NRQL,并且支持自定义的网页展示组件,达到数据可视化的目的,让用户能更直观的了解被监控产品的状况。

  2. 数据集成(Integration)

    New Relic支持收集自定义的数据,使得用户可以添加自己的属性并用于数据分析之中。同时,New Relic也提供了与云平台的数据集成能力,比如AWS,MS Azure等。用户可以在统一的平台里从多个维度分析数据,寻找有价值的信息。

  3. 仪表盘(Dashboard UI)

    New Relic提供了易用的Dashboard UI,使得所有的监控数据能够很好的展示出来,用户能够非常直观的查看各种性能曲线。

  4. REST API

    New Relic提供了完整的API帮助客户查询和添加数据,使得该平台对运维人员非常友好。

总结

在我们使用过程中,New Relic的完整功能满足了我们各方面的需求,总体来讲是一款非常优秀的监控产品。在后续的文章中,我将分别介绍各产品的具体功能特性,以使得大家能有更深入的了解。

New Relic性能监控(一)概览的更多相关文章

  1. 《深入理解Java虚拟机》虚拟机性能监控与故障处理工具

    上节学习回顾 从课本章节划分,<垃圾收集器>和<内存分配策略>这两篇随笔同属一章节,主要是从理论+实验的手段来讲解JVM的内存处理机制.好让我们对JVM运行机制有一个良好的概念 ...

  2. Go 程序的性能监控与分析 pprof

    你有没有考虑过,你的goroutines是如何被go的runtime系统调度的?是否尝试理解过为什么在程序中增加了并发,但并没有给它带来更好的性能?go执行跟踪程序可以帮助回答这些疑问,还有其他和其有 ...

  3. Android网络性能监控方案

    阿里云 云原生应用研发平台EMAS 刘宝文(木睿) 背景 移动互联网时代,移动端极大部分业务都需要通过App和Server之间的数据交互来实现,所以大部分App提供的业务功能都需要使用网络请求.如果因 ...

  4. 应用性能监控:SkyWalking

    目录 SkyWalking 简介 SkyWalking 搭建 平台后端(Backend) 平台前端(UI) Java Agent(Java 应用监控) Java Agent 下载 Java 演练项目 ...

  5. jvm系列(五):tomcat性能调优和性能监控(visualvm)

    tomcat服务器优化 1.JDK内存优化 根据服务器物理内容情况配置相关参数优化tomcat性能.当应用程序需要的内存超出堆的最大值时虚拟机就会提示内存溢出,并且导致应用服务崩溃.因此一般建议堆的最 ...

  6. spring拦截器 实现应用之性能监控

    package cn.ximi.erp.web.common.interceptors; import cn.ximi.core.common.utils.string.StringUtil; imp ...

  7. Performance Monitor1:开始性能监控

    Performance Monitor是Windows内置的一个可视化监控工具,能够在OS级别上实时记录系统资源的使用情况,通过收集和存储日志数据,在SQL Server发生异常时,能够还原系统当时的 ...

  8. 前端性能监控方案window.performance 调研(转)

    1. 业界案例 目前前端性能监控系统大致为分两类:以GA为代表的代码监控和以webpagetest为代表的工具监控. 代码监控依托于js代码并部署到需监控的页面,手动计算时间差或者使用浏览器的的API ...

  9. Apache服务器性能监控

    Apache服务器性能监控 1.使用自带mod_status模块监控 1)加载mod_status.so 模块 在httpd.conf中打开LoadModule status_module modul ...

随机推荐

  1. window.open弹窗阻止问题解决之道

    https://segmentfault.com/a/1190000015381923https://segmentfault.com/a/1190000014988094https://www.cn ...

  2. springboot An incompatible version [1.1.32] of the APR based Apache Tomcat Native library is installed, while Tomcat requires version [1.2.14]

    1.错误 An incompatible version [1.1.32] of the APR based Apache Tomcat Native library is installed, wh ...

  3. django-xadmin设置全局变量

    class GlobalSetting(object): site_title = '自己的命名' site_footer = '底部命名'# 收缩菜单 menu_style = 'accordion ...

  4. Node.JS实战34:远程屏幕监控?可以的

    是否想做一个远程系统屏幕监控功能?这是个有意思的功能. Node.JS可以实现,而且很方便. 目标效果: 在网页中实时查看系统屏幕内容. 实现原理: 1.用express实现服务器: 2.当访问来临时 ...

  5. Eureka-server配置servlet.context-path后导致Eureka-client注册到server问题

    在springboot项目里配置了servlet.context-path(应用上下文路径),也称之为项目路径,该配置让项目URL后增加配置的值.如果在Eureka-server中配置该值,当然也会改 ...

  6. SpringBoot使用webservice

    Pom.xml <parent> <groupId>org.springframework.boot</groupId> <artifactId>spr ...

  7. 《剑指offer》面试题16 反转链表 Java版

    (输入链表的头节点,反转链表) 书中方法:对于一个链表,我们只能从头往后遍历,如果要反转,我们需要更改当前节点的next域指向前一个节点,此时链表断开,为了能继续修改下一个节点的next域,我们还要维 ...

  8. python学习第四十六天dir( )函数用法

    dir( )函数有点像目录的意思,但是他是包含由模块定义的名称的字符串的排序列表.这个列表包含模块中定义的所有模块,变量和函数的名称. 列举其用法 import time content = dir( ...

  9. 问题 H: 小k的简单问题

    问题 H: 小k的简单问题 时间限制: 1 Sec  内存限制: 128 MB提交: 107  解决: 57[提交] [状态] [命题人:jsu_admin] 题目描述 地图上有n个村庄,小k每个月需 ...

  10. .NET基础篇——利用泛型与反射更新实体(ADO.NET Entity Framework)(转)

    自从ADO.NET Entity Framework面世以来,受到大家的热捧,它封装了大量代码生成的工具,用户只需要建立好实体之间的关系,系统就是会为用户自动成功了Add.Delete.CreateO ...