前端性能监控系统ShowSlow】的更多相关文章

作者:zhanhailiang 日期:2014-11-14 1. 简单介绍 ShowSlow是开源的前端性能监控系统,提供了下面功能: 前端性能指标数据收集功能:ShowSlow原生提供了数据收集工具DOM Monster!,但也支持通过YSlow,PageSpeed等第三方工具将性能数据上报给服务端完毕收集(其server端提供了针对多达8种不同工具上报的数据收集器dommonster,dynatrace,events,har,metric,pagespeed,webpagetest,yslo…
前端监控系统 目前已经上线,欢迎使用! 背景:应工作要求,需要整理出前端项目的报错信息,尝试过很多统计工具,如: 腾讯bugly.听云.OneApm.还有一个忘记名字的工具. 因为各种原因,如: 统计的日志无法正确分类,收费太高,存储数量有限制等等,都放弃使用了. 后来,我说:"我们自己来分析吧",后来,我就开发了这个系统. 既然要做,就要做的像样一点. 准备工作. 一.监控系统必须是独立出来的服务,这样才能够服务于多个前端项目. ①购买阿里云服务器(双核,4G内存,3M带宽) ②安装…
1. 业界案例 目前前端性能监控系统大致为分两类:以GA为代表的代码监控和以webpagetest为代表的工具监控. 代码监控依托于js代码并部署到需监控的页面,手动计算时间差或者使用浏览器的的API进行数据统计. 影响代码监控数据的因素有以下几种: 浏览器渲染机制: 浏览器对API的实现程度,比如performance API: 工具监控不用将统计代码部署到页面中,一般依托于虚拟机.以webpageTest为例,输入需统计的url并且选择运行次url的浏览器版本,webpageTest后台虚拟…
Performance是一个做前端性能监控离不开的API,最好在页面完全加载完成之后再使用,因为很多值必须在页面完全加载之后才能得到.最简单的办法是在window.onload事件中读取各种数据. 大概长这个样子,小程序也支持 属性 timing (PerformanceTiming) 从输入url到用户可以使用页面的全过程时间统计,会返回一个PerformanceTiming对象,单位均为毫秒 按触发顺序排列所有属性:(更详细标准的解释请参看:W3C Editor's Draft)naviga…
阅读目录 一:什么是Performance? 二:使用 performance.timing 来计算值 三:前端性能如何优化? 四:Performance中方法 五:使用performane编写小工具 回到顶部 一:什么是Performance? Performance是前端性能监控的API.它可以检测页面中的性能,W3C性能小组引入进来的一个新的API,它可以检测到白屏时间.首屏时间.用户可操作的时间节点,页面总下载的时间.DNS查询的时间.TCP链接的时间等.因此我们下面来学习下这个API.…
▶ 概述 Elastic APM 是基于 Elastic Stack 构建的应用性能监控系统.通过 Elastic APM 可以监控应用程序,收集有关请求的响应时间.数据库查询.高速缓存调用.外部 HTTP 请求等的详细性能信息,这样可以更快地查明并修复性能问题. Elastic APM 还会自动收集未处理的错误和异常,错误主要基于堆栈跟踪进行分组,因此可以识别出现的新错误,并密切关注特定错误发生的次数. ▶ APM 组件 Elastic APM 包含四个组件: APM agent APM ag…
导火索 有一天一个测试同事的一个移动端页面白屏了,看样子是页面哪里报错了.  我自己打开页面并没有报错,最后发现报错只存在于他的手机,移动端项目又是在微信环境下,调试起来会比较麻烦,最后用他手机调试才发现问题: 是他账户下面有个对话的消息数据有问题导致页面报错了.  一般遇到这种情况只有用他的手机或者账户调试能很快查到问题,如果是外部的用户怎么办,我没法拿他的手机去测试. 其实这个问题很常见,但是这次我觉得这个问题如果不是我们自己同事发现的,那就很恐怖,可能废很大精力才能查出问题,甚至会导致很严…
工具介绍 1. Statsd 是一个使用Node开发网络守护进程,它的特点是通过UDP(性能好,及时挂了也不影响主服务)或者TCP来监听各种数据信息,然后发送聚合数据到后端服务进行处理.常见支持的「Graphite」,「ElasticaSearch」,「InfluxDB」 等等 ,它集成了各种语言的客户端API,这里我们使用了jsocol/pystatsd: A Python client for statsd进行数据收集. 2. Graphite 是一套Python写的开源编程接口,主要是用来…
工具介绍 1. Statsd 是一个使用Node开发网络守护进程,它的特点是通过UDP(性能好,及时挂了也不影响主服务)或者TCP来监听各种数据信息,然后发送聚合数据到后端服务进行处理. 常见支持的「Graphite」,「ElasticaSearch」,「InfluxDB」 等等 ,它集成了各种语言的客户端API,这里我们使用了jsocol/pystatsd: A Python client for statsd进行数据收集. 2. Graphite 是一套Python写的开源编程接口,主要是用…
目录 系统描述. 开发环境. 开始之前. 安装influxdb数据库. 安装collectd 安装Grafana FAQ       influxdb的web界面没反应.   系统描述 想打造 New Relic 那样漂亮的实时监控系统我们只需要 InfluxDB/collectd/Grafana 这三个工具,这三个工具的关系是这样的: 采集数据(collectd)-> 存储数据(InfluxDB) -> 显示数据(Grafana). InfluxDB 是用Go 语言开发的一个开源分布式时序数…
timing (PerformanceTiming) 从输入url到用户可以使用页面的全过程时间统计,会返回一个PerformanceTiming对象,单位均为毫秒 按触发顺序排列所有属性:(更详细标准的解释请参看:W3C Editor's Draft)navigationStart:在同一个浏览器上下文中,前一个网页(与当前页面不一定同域)unload 的时间戳,如果无前一个网页 unload ,则与 fetchStart 值相等unloadEventStart:前一个网页(与当前页面同域)u…
如果我们想要对一个网页进行性能监控,那么使用window.performance是一个比较好的选择. 我们通过window.performance可以获取到用户访问一个页面的每个阶段的精确时间,从而对性能进行分析. 一.页面性能监控 1.利用performance.timing来监控网页的性能 网页的整个生命周期 PerformanceTiming属性如下 PerformanceTiming.navigationStart 表示从同一个浏览器上下文的上一个文档卸载(unload)结束时的UNIX…
该文章仅作为自己的总结 1.performance.timing对象 navigationStart:当前浏览器窗口的前一个网页关闭,发生unload事件时的Unix毫秒时间戳.如果没有前一个网页,则等于fetchStart属性. unloadEventStart:如果前一个网页与当前网页属于同一个域名,则返回前一个网页的unload事件发生时的Unix毫秒时间戳.如果没有前一个网页,或者之前的网页跳转不是在同一个域名内,则返回值为0. unloadEventEnd:如果前一个网页与当前网页属于…
window.performance 是W3C性能小组引入的新的API,目前IE9以上的浏览器都支持.一个performance对象的完整结构如下图所示: memory字段代表JavaScript对内存的占用. navigation字段统计的是一些网页导航相关的数据: redirectCount:重定向的数量(只读),但是这个接口有同源策略限制,即仅能检测同源的重定向: type 返回值应该是0,1,2 中的一个.分别对应三个枚举值: 0 : TYPE_NAVIGATE (用户通过常规导航方式访…
移动H5前端性能优化指南 概述 1. PC优化手段在Mobile侧同样适用2. 在Mobile侧我们提出三秒种渲染完成首屏指标3. 基于第二点,首屏加载3秒完成或使用Loading4. 基于联通3G网络平均338KB/s(2.71Mb/s),所以首屏资源不应超过1014KB5. Mobile侧因手机配置原因,除加载外渲染速度也是优化重点6. 基于第五点,要合理处理代码减少渲染损耗7. 基于第二.第五点,所有影响首屏加载和渲染的代码应在处理逻辑中后置8. 加载完成后用户交互使用时也需注意性能优化指…
「 OneAPM 技术公开课」由应用性能管理第一品牌 OneAPM 发起,内容面向 IT 开发和运维人员.云集技术牛人.知名架构师.实践专家共同探讨技术热点. 11月28日,OneAPM 技术公开课第五期将走进深圳.来自 OneAPM.腾讯.酷狗以及平安科技的前端大牛们,围绕「前端性能大作战」的主题,将一起为小伙伴们带来前端性能优化的黄金指导准则.让我们一起来听一场「有趣」又「有料」的分享吧! 时间地点 11.28日 周六 13:30-17:30 深圳·南山区深南大道1000号腾讯大厦多功能会议…
移动H5前端性能优化指南 米随随2015.01.23 移动H5前端性能优化指南 概述 1. PC优化手段在Mobile侧同样适用2. 在Mobile侧我们提出三秒种渲染完成首屏指标3. 基于第二点,首屏加载3秒完成或使用Loading4. 基于联通3G网络平均338KB/s(2.71Mb/s),所以首屏资源不应超过1014KB5. Mobile侧因手机配置原因,除加载外渲染速度也是优化重点6. 基于第五点,要合理处理代码减少渲染损耗7. 基于第二.第五点,所有影响首屏加载和渲染的代码应在处理逻辑…
原文地址https://zhuanlan.zhihu.com/p/25176904?utm_source=wechat_session&utm_medium=social&utm_member=MzFiZGQwMmUwMGNjYjNlYmJkMWY4MmZjMTY4MjdlZmY%3D%0A 移动 H5 (PC Web)前端性能优化指南 概述 PC 优化手段在 Mobile 侧同样适用 在 Mobile 侧我们提出三秒种渲染完成首屏指标 基于第二点,首屏加载 3 秒完成或使用 Loadin…
移动H5前端性能优化指南 概述 1. PC优化手段在Mobile侧同样适用2. 在Mobile侧我们提出三秒种渲染完成首屏指标3. 基于第二点,首屏加载3秒完成或使用Loading4. 基于联通3G网络平均338KB/s(2.71Mb/s),所以首屏资源不应超过1014KB5. Mobile侧因手机配置原因,除加载外渲染速度也是优化重点6. 基于第五点,要合理处理代码减少渲染损耗7. 基于第二.第五点,所有影响首屏加载和渲染的代码应在处理逻辑中后置8. 加载完成后用户交互使用时也需注意性能优化指…
上期回顾 上一期:NanoProfiler - 适合生产环境的性能监控类库 之 基本功能篇 上次介绍了NanoProfiler的基本功能,提到,NanoProfiler实现了MiniProfiler欠缺的多线程和异步代码的支持,并且,由于采用不同的内部数据结构,NanoProfiler拥有更高的执行效率,而且占用极少的系统资源,因此,是适合在生产环境下使用的性能监控类库.并且,我们也提到了,NanoProfiler设计理念的另一大不同,即面向大数据分析. 这一期,我重点介绍一下NanoProfi…
前言 说到 Wordpress,大家往往想到的是博客,其实,如今的 WordPress 已经成为全球使用量最多的开源 CMS 系统.并且,如果你有一定的技术基础稍加改动,就可以搭建出新闻网站.企业网站.电影网站,甚至是商城系统等.据维基百科两年前的统计,已经有超过 2 千万的网站使用了 Wordpress 搭建自己的系统. Wordpress 官网上有这么一句话:WordPress is both free and priceless at the same time. 说到价格无法衡量,有这么…
市面上成熟的 Node.js 性能监控系统,监控的指标有很多. 以开源的 Easy-Monitor 为例,在系统监控一栏中,指标包括内存.CPU.GC.进程.磁盘等. 这些系统能全方位的监控着应用的一举一动,并且可以提供安全提醒.在线分析.导出真实状态等服务. 本专题分为上下两个篇章,会简单分析下在 Node.js 环境中的几个资源瓶颈,包括CPU .内存和进程奔溃,并且会给出相应的监控方法. 本系列所有的示例源码都已上传至Github,点击此处获取. 一.CPU 在 Linux 系统中,可以通…
===================================================================== 前端监控系统: DEMO地址  GIT代码仓库地址 ===================================================================== 前言: 用户对前端程序员来说,就是一个黑匣子. 如果用户上报了一个错误,前端程序员就是两眼一抹黑,因为很多错误是没法复现的.我问过很多前端工程师,他们的回答都是,如果你…
怎样定位前端线上问题,一直以来,都是很头疼的问题,因为它发生于用户的一系列操作之后.错误的原因可能源于机型,网络环境,接口请求,复杂的操作行为等等,在我们想要去解决的时候很难复现出来,自然也就无法解决. 当然,这些问题并非不能克服,让我们来一起看看如何去监控并定位线上的问题吧. 这是搭建前端监控系统的第六章,主要是介绍如何使用js进行页面截屏和录屏,跟着我一步步做,你也能搭建出一个属于自己的前端监控系统. =============================================…
这套前端监控系统用到的技术栈是:React+MongoDB+Node.js+Koa2.将性能和错误量化.因为自己平时喜欢吃菠萝,所以就取名叫菠萝系统.其实在很早以前就有这个想法,当时已经实现了前端的参数搜集,只是后台迟迟没有动手,也就拖着. 目前完成的还只是个雏形,仅仅是搜集了错误和相关的性能参数. 后台样式采用了封装过的matrix. 分析功能还很薄弱,只是做了简单的演示,并且各种基础功能还有待完善. 后面打算强化数据分析,并且还要实现错误的回放机制,思路的话以前也调研过,参考之前的一篇文章.…
原文地址:http://kerrigan.sinaapp.com/post-7.html Linux System and Performance Monitoring http://www.houstondad.com/papers/oscon2009-linux-monitoring.pdf  Darren Hoch 译:Roger 这是[叔度]给我的一篇非常不错的关于Linux性能监控的文档,可惜是英文的,网上只能找到些中文节选,并不完整. 准备花些时间将原文共43页认真学习一下,顺便翻译…
原文地址:http://kerrigan.sinaapp.com/post-7.html Linux System and Performance Monitoring http://www.houstondad.com/papers/oscon2009-linux-monitoring.pdf Darren Hoch 译:Roger 这是[叔度]给我的一篇非常不错的关于Linux性能监控的文档,可惜是英文的,网上只能找到些中文节选,并不完整. 准备花些时间将原文共43页认真学习一下,顺便翻译分…
性能调优之Java系统级性能监控及优化   对于性能调优而言,通常我们需要经过以下三个步骤:1,性能监控:2,性能剖析:3,性能调优 性能调优:通过分析影响Application性能问题根源,进行优化Application: 我们对于操作系统的性能关注主要在下面几个点上:CPU 利用率.CPU 调度执行队列.内存利用率.网络 I/O.磁盘I/O. 1.CPU 利用率 对于一个应用来说,为了让应用达到最好的性能和可扩展性,我们不仅仅要充分利用 CPU 周期内可用的部分,而且要让这部分 CPU 的使…
前端监控系统 目前已经上线,欢迎使用! 服务器搭建好了,可以着手开发了. 其实前端需要分析的数据有很多,包括,PVUV, 接口请求统计,耗时统计,JS错误统计,用户使用设备统计,用户地域分布,页面用户行为分析等等.这个系统是由JS错误搜集起源,所以先讲讲JS错误日志搜集篇. 一.创建一个js文件,命名为monitor.js 如果要监控前端项目的数据,就需要在页面的最顶部嵌入一段我们的监控代码,这也是最核心的部分,所以我把它单独拎出来立项. 二.开始监控JS的报错日志 window.onerror…
Java应用性能远程监控系统(使用C/S架构) 适用于监控所有Java应用,具有堆内存监控.方法区监控.GC监控.类加载监控.类编译监控与线程监控,提供堆快照下载,线程快照下载.体验网址:http://116.85.23.6:8888/ 一.简介 JavaMonitor 发布之后,受到了很多网友的好评,QQ群也有很多人加入反馈建议,身为作者,甚为骄傲.但 JavaMonitor 的局限性也有很多,比如,无法进行远程监控,无法监控多个服务器,占用内存太大等等.为了解决上述问题,基于 JavaMon…