文档章节

Python 全栈开发 -- 监控篇

OneAPM蓝海讯通
 OneAPM蓝海讯通
发布于 2016/01/26 16:45
字数 1299
阅读 198
收藏 0

精选30+云产品,助力企业轻松上云!>>>

如果你已经玩转了 Python 编程语言语法,肯定想用这些知识,开发一款应用程序,它可以是在网上,可以炫耀或出售,那就需要全栈式开发 Python。具体如何创建,部署和运行生产 Python Web 应用程序,参考 Full Stack Python,本文主要介绍一点,监控。

Python 全栈开发 -- 监控篇

为什么要监控?

Web 应用程序在执行时,监控工具收集分析并显示其相关信息,每个有问题的应用程序都有网络堆栈。通过监控工具提供的堆栈信息,开发和运营团队能够响应并解决问题。

收集和分析生产环境的数据在保持稳定性,维持高性能方面是十分重要的,尤其对错误的 Web 应用程序进行优化很有必要。

监控和​​日志的区别

监控和日志都旨在帮助应用程序诊断问题,在调试过程中他们的目的非常相似。唯一的差别是,日志数据只会根据明确的事件而进行记录,而监控数据则集合数据背景进行分析。

例如,当错误发生时,该事件被记录在日志中。同时,监控应用的代码还要收集数据,不仅是异常 log,还包括函数的性能数据。

其实,俩两者之间的区别也不是那么明显,毕竟解决问题不是只有一条路径。只要对 Web 生产应用程序有用都是可以用的。

监控项目

在操作系统和网络堆栈方面有以下几个重要的资源需要监控

  • CPU 使用率
  • 内存利用率
  • 持久性存储消耗与空闲
  • 网络带宽和延迟

应用级监控包括以下几个方面,不同应用程序因不同的读写程度,或受流量波动影响而需要不同的响应时间,有不同的资源占用情况。

  • 应用程序的警告和错误(例如 500 HTTP 错误)
  • 应用程序代码的性能
  • 模板渲染时间
  • 浏览器为应用程序所需的渲染时间
  • 数据库的查询性能

开源监控项目

  • statsd 监听和汇总指标转移到其他的服务的 Node.js 的网络守护进程,如到 Graphite。
  • Graphite 存储时间序列数据,并通过一个 Django web 应用显示图形。
  • Bucky 测量来自最终用户的浏览器 web 应用程序的性能,并发送该数据回服务器。
  • Sensu 是用 Ruby 编写的开源监控框架,但适用于任何编程语言的 Web 应用程序。
  • Graph Explorer 是基于 Graphite 的仪表盘,添加了一些功能和亮眼设计。
  • PacketBeat Elasticsearch 允许开发人员搜索收集的数据并通过 Kibana 用户界面的 Web 应用程序可视化事件。
  • Munin 是客户端基于插件来监控系统发送监控流量到 Munin 节点,进行数据分析和可视化。注意,此项目是用 Perl 编写的,所以需要在 Node 上安装 Perl 5。

托管监控服务

  • OneAPM 监控终端的用户体验,服务器性能,支持追踪数据库、第三方 API 和 Web 服务器的各种问题,打造 ITOA 一站式 IT 管理解决方案。
  • Status.io 专注于 Web 应用程序的正常运行时间和指标响应时间。
  • StatusPage.io 提供了只要简单设置状态页面即可监控应用运行时间的方法。
  • Appdynamics 致力于应用程序性能管理和 IT 运营分析。专注于管理的整个云计算环境应用的性能和可用性,以及数据中心内部可视化。
  • New Relic 用于获取和分析堆栈有关的数据应用和数据库监控以及插件。
  • CopperEgg 是监控服务器和基础设施等较低级别的监控。在 DevOps 商店中因为改变生产环境能够将修改的结果即时反馈而受到欢迎。
  • PagerDuty 对于指定的个人或团队在稳定性,性能,或运行时间有问题的应用程序进行报警。
  • App Enlight 提供了性能,异常和错误监控,目前针对 Python We应用程序。

监控学习清单

  • 回顾一下 SaaS 开源监视工具,第三方服务往往更容易建立和托管数据为您服务。开源项目给你更多的控制权,但你需要准备额外的服务器。

  • 建议使用第三方监控工具,看看它是如何监控你的应用程序。当然可以自己测试不同第三方监测工具对你应用级的监控能力。

参考:Full Stack Python

OneAPM 能够帮你查看 Python 应用程序的方方面面,不仅能够监控终端的用户体验,还能监控服务器性能,同时还支持追踪数据库、第三方 API 和 Web 服务器的各种问题。想阅读更多技术文章,请访问 OneAPM 官方技术博客 本文转自 OneAPM 官方博客

OneAPM蓝海讯通
粉丝 94
博文 631
码字总数 1266889
作品 0
海淀
私信 提问
加载中
请先登录后再评论。
老男孩Python全栈第2期+课件笔记【高清完整92天整套视频教程】

点击了解更多Python课程>>> 老男孩Python全栈第2期+课件笔记【高清完整92天整套视频教程】 课程目录 ├─day01-python 全栈开发-基础篇 │ 01 python 全栈开发-基础篇-day01 开课介绍.avi 34...

osc_k5ta3dng
2018/05/16
13
0
Python全栈开发之目录

基础篇 Python全栈开发之1、输入输出与流程控制 Python全栈开发之2、运算符与基本数据结构 Python全栈开发之3、数据类型set补充、深浅拷贝与函数 Python全栈开发之4、内置函数、文件操作和递...

赤木晴子梦
2016/06/22
0
0
在Windows下和MacBook中如何查找本地的字体文件

在Windows下和MacBook中如何查找本地的字体文件 大家好,我叫亓官劼(qí guān jié ),三本计算机在读,目前在积极准备21计算机考研中,同时也在学习后端开发,准备工作。不敢孤注一掷,因...

亓官劼
04/07
0
0
还在为微信朋友圈的大量广告而苦恼吗?一文教你如何清除微信朋友圈的广告!!!

还在为微信朋友圈的大量广告而苦恼吗?一文教你如何清除微信朋友圈的广告!!! 大家好,我叫亓官劼(qí guān jié ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博客地址为...

亓官劼
04/13
0
0
python对象与json相互转换的方法

在网络通信中,json是一种常用的数据格式,对于python来讲,将类转化为json数据以及将json数据转化为对象是一件非常容易的事情。 下面给出两者转化的方法 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 ...

osc_wq7ij8li
2019/05/08
19
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring heapdump 查找敏感信息

意义不大,乱写的辣鸡东西。

osc_jze5xfnz
20分钟前
24
0
Spark环境搭建(上)——基础环境搭建

Spark摘说 Spark的环境搭建涉及三个部分,一是linux系统基础环境搭建,二是Hadoop集群安装,三是Spark集群安装。在这里,主要介绍Spark在Centos系统上的准备工作——linux系统基础环境搭建。...

osc_qnf5stcu
22分钟前
8
0
vue中使用kindeditor富文本编辑器2

第一步,下载依赖 yarn add kindeditor  第二步,建立kindeditor.vue组件 <template> <div class="kindeditor"> <textarea :id="id" name="content" v-model="outContent"></tex......

osc_c1kk059r
23分钟前
8
0
由HashMap哈希算法引出的求余%和与运算&转换问题

1、引出问题   在前面讲解 HashMap 的源码实现时,有如下几点:   ①、初始容量为 1<<4,也就是24 = 16      ②、负载因子是0.75,当存入HashMap的元素占比超过整个容量的75%时,进行...

osc_gzy7qjj6
24分钟前
19
0
CentOS 7.4下使用yum安装MySQL5.7.20 最简单的

CentOS7默认数据库是mariadb, 但是 好多用的都是mysql ,但是CentOS7的yum源中默认好像是没有mysql的。 上一篇安装的是5.6的但是我想安装5.7的 yum安装是最简单的 尝试过编译安装各种问题,最...

osc_3b0dcpcm
25分钟前
17
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部