Prometheus-分布式监控系统-普罗米修斯
++++++++++++++++ 壹 ++++++++++++++++++、
Prometheus简介
- 分布式监控系统。
- 同时也是时间序列数据库。
- 完全开源
- 被很多云厂商(架构)内置,在这些厂商(架构)中,可以简单部署Prometheus,用来监控整个云基础架构设施。
- Prometheus主要用于对基础设施的监控。包括服务器,数据库,VPS,几乎所有东西都可以通过Prometheus进行监控。
如前所述,Prometheus由各种不同的组件组成。从系统中提取监控指标,可以通过不同的方式做到:
- 通过应用程序给定监控项,对给定的公开URL上Prometheus兼容的指标。Prometheus将其定义为目标并加入监控系统。
- 通过使用云厂商内置Prometheus程序,会定义好整个监控项和监控工具集拥。例如,可以 Linux机器监控模版(节点导出器),数据库的模版(SQL导出器或MongoDB导出器),以及HTTP代理或者负载程序的模版(例如HAProxy导出器)等这些模版直接就可以加入监控并使用。
- 通过使用Pushgateway:应用程序或作业不会直接公开指标。某些应用程序要么没有合适的监控模版(例如批处理作业),对他们选择不能直接通过应用程序公开这些指标。如果我们忽略您可能使用Pushgateway的极少数情况,Prometheus是一个基于主动请求pull的监控系统。
Prometheus可以做什么
- 在业务层用作埋点系统 Prometheus支持各个主流开发语言(Go,java,python,ruby官方提供客户端,其他语言有第三方开源客户端)。
- 我们可以通过客户端方面的对核心业务进行埋点。如下单流程、添加购物车流程。
- 在应用层用作应用监控系统 一些主流应用可以通过官方或第三方的导出器,来对这些应用做核心指标的收集。如redis,mysql。
- 在系统层用作系统监控 除了常用软件, prometheus也有相关系统层和网络层exporter,用以监控服务器或网络。
- 集成其他的监控 prometheus还可以通过各种exporte,集成其他的监控系统,收集监控数据,如AWS CloudWatch,JMX,Pingdom等等。
不要用Prometheus做什么
prometheus也提供了Grok exporter等工具可以用来读取日志,但是prometheus是监控系统,不是日志系统。应用的日志还是应该走ELK等工具栈。
grafana
prometheus一般配合grafana做前端展示
++++++++++++++++ 贰 ++++++++++++++++++
一、Pushgateway 简介
Pushgateway 是 Prometheus 生态中一个重要工具,使用它的原因主要是:
- Prometheus 采用 pull 模式,可能由于不在一个子网或者防火墙原因,导致 Prometheus 无法直接拉取各个 target 数据。
- 在监控业务数据的时候,需要将不同数据汇总, 由 Prometheus 统一收集。
由于以上原因,不得不使用 pushgateway,但在使用之前,有必要了解一下它的一些弊端:
- 将多个节点数据汇总到 pushgateway, 如果 pushgateway 挂了,受影响比多个 target 大。
- Prometheus 拉取状态
up
只针对 pushgateway, 无法做到对每个节点有效。 - Pushgateway 可以持久化推送给它的所有监控数据。
因此,即使你的监控已经下线,prometheus 还会拉取到旧的监控数据,需要手动清理 pushgateway 不要的数据。
++++++++++++++++ 叁 ++++++++++++++++++
埋点
摘自:程序员杂货铺 https://blog.csdn.net/Zbylant
所谓“埋点”,是数据采集领域(尤其是用户行为数据采集领域)的术语。指的是针对特定用户行为或事件进行捕获、处理和发送的相关技术及其实施过程。 埋点的技术实质,是先监听软件应用运行过程中的事件,当需要关注的事件发生时进行判断和捕获。
摘自:https://zhuanlan.zhihu.com/p/25195217
1 2 3 4 5 6 7 8 9 10 | 所谓埋点就是在应用中特定的流程收集一些信息,用来跟踪应用使用的状况,后续用来进一步优化产品或是提供运营的数据支撑,包括: 1 、访问(Visits) 2 、访客(Visitor) 3 、停留时间(Time On Site) 4 、页面查看(Page Views,又称为页面浏览) 5 、跳出率(Bounce Rate,又可称为蹦失率) 这样的信息收集可以大致分为两种: 1 、页面统计(track this virtual page view) 2 、统计操作行为(track this button by an event) |
意义何在?
-
流量监测(在线情况分析、按时段分析、按来源分析);
-
构建行为路径, 通过对处理后的信息进行关联,获取用户的整条行为链路;
-
通过对埋点数据的处理、分析、建模,可以挖掘用户的喜好、需求,判断产品的效果和未来走向;
-
监控应用运行状态,提供问题跟踪定位的数据支持;
-
为营销策略提供数据支持;
-
实施 AB Testing;
-
作为数据平台中,数据采集的一个不可缺少的环节;
埋点的技术难点
现在的业务技术架构都不仅仅是单独的一种技术方案能解决的。现在只要是做互联网的公司,其业务系统都会包含如下系统模块:
-
大前端。这里包含 WEB、HTML5, App(IOS、Android、Hybrid形式)
-
后端应用系统
-
服务器系统
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
2017-09-21 ORM(一)