你知道那种感觉。你刚刚收到的基础设施警报CPU使用率已飙升你的服务器之一。您关注,因为它是在100%被固定在最后五分钟,并呈现出没有恢复正常的迹象。有设备上运行三个应用程序和所有的人都患有现在的退化的响应时间。但你不能告诉应用导致的问题,为什么事情突然消失了失控。
如果没有正确的指标,你可能会意识到你正在经历一个相当普遍的问题,你的Node.js应用程序的内存中运行之前浪费了宝贵的时间和精力。所有这些CPU的工作朝频繁的垃圾回收去。
如上所述的场景说明了为什么Node.js虚拟机运行时度量,比如资源利用率和垃圾收集统计数据,对于操作和DevOps团队来说是如此重要的数据点。对它们进行监视可以帮助在问题影响客户之前避免问题,并且在对性能问题进行故障排除或验证问题的解决方案时也很有帮助。这就是为什么我们如此兴奋地宣布,新的运行时指标的可用性节点VM(又名V8)和一个专用的节点的虚拟机查看从Node.js的代理可视化和分析这些新数据New Relic的APM。
节点的虚拟机页面
该节点的虚拟机页面提供旨在帮助您快速识别异常情况,并发现其根源互动,时间序列图。有一个地方查看所有节点VM指标可以更容易地看到他们之间的关系,这样你就可以专注于正确的问题,你的调查。如上所述,例如,它可以帮助你看到超越穗在CPU利用率,内存使用和垃圾收集时间相应的跳转指向一个内存泄漏的可能原因。
如下面的屏幕截图节点的虚拟机通过New Relic UI的左侧导航可以方便地到达页面。如果您的应用程序部署在多个服务器上,默认情况下,我们会向您展示“所有服务器”的高级概览:
您可以深入并通过从服务器的特定服务器获取其它详细信息下拉页面的顶部,如下所示:
将鼠标悬停在图表的任何部分上,可以看到一个指示器,它可以方便地在图表之间关联数据。注意到一个尖峰或感兴趣的区域了吗?只要在图表中选择区域,New Relic就会自动调整时间窗口以匹配。当您在整个New Relic UI中探索其他度量时,这个时间窗口将被保留。例如,您可以切换到Transactions页面来查看事务和事务跟踪,从而将搜索范围缩小到在有趣的运行时度量事件发生时处于活动状态的代码路径。由于时间窗口被保留,当您切换到transactions页面时,它将显示在同一时间窗口中活动的事务。如果您正在寻找一个问题,您可能希望从作为其中一个事务的一部分执行的代码开始。
向自定义仪表板添加指标
想要查看a上的某个矩阵New Relic的见解仪表板?没问题!仅在使用的见解”度量探险家要向新的或现有的仪表板添加度量图表:
新的指标,也
除了CPU和内存使用情况指标,分别为已经上市,我们已经增加了几个新的指标到New Relic的Node.js的代理:
记忆:
- 免费,使用,最大堆按节点报告
- 非堆内存使用节点的东西诸如缓冲区和流
我们还引入了一个新的可选选项@newrelic / native-metrics模块,安装时旁边的New Relic的代理的Node.js,提供以下附加信息:
垃圾收集:
- 时间在回收废每分钟
- 时间在回收利用类型GC的花每分钟
- 垃圾收集的频率每分钟
事件循环:
- 主动执行所花费的总时间在每个事件循环滴答
- 事件循环蜱虫每分钟
(您可以在属性中找到对新度量的完整描述,以及最小节点和代理版本需求Node.js的VM测量记录。并期待在这里针对Node.js的虚拟机统计页面的详细信息)。
New Relic团队很高兴能够对Node.js应用程序运行时的健康状况提供这些深入的见解。Node VM指标现在可以为New Relic APM客户提供我们的基本计划、专业计划或企业计划。我们很想听到你对这个特性的反馈,请加入我们新遗迹技术社区。