监控简介
监视工具捕获,分析和显示Web应用程序执行信息。每个应用程序在Web堆栈的所有层都可能出现问题。监控工具通过展示帮助开发人员和运营团队响应并修复问题。
捕获和分析有关生产环境的数据对于主动处理Web应用程序的稳定性,性能和错误至关重要。
监视和日志记录的目的非常相似,它们有助于诊断应用程序的问题并帮助调试。主要差异为日志基于事件触发,而监视是被动的背景数据集合。
例如发生错误时,通过异常处理程序中的代码显式记录该事件。同时,监视代理程序对代码进行检测,并且不仅收集有关已记录异常的数据,还收集有关函数和方法性能的数据。
操作系统和网络的监控关注: CPU、内存和磁盘利用率,网络带宽和延迟
应用程序级别监视包含几个方面。 基于应用程序是重读,重写还是受到快速波动的影响而有所不同。涉及应用程序警告和错误(500级HTTP错误)、应用代码性能、模板渲染时间、浏览器渲染应用程序的时间、数据库查询性能等。
开源监控项目
错误跟踪
最初只是一个Python监控项目,但现在可以用于任何编程语言。
度量
是一个node.js网络守护程序,它监听指标并聚合它们以便转移到另一服务(如Graphite)。
存储时间序列数据,并通过Django Web应用程序在图形中显示它们。
是一个用Ruby编写的开源监控框架,但适用于任何编程语言Web应用程序。
read more