0

0

Python性能监控项目教程_PrometheusGrafana结合实践

冷漠man

冷漠man

发布时间:2025-12-29 22:35:02

|

168人浏览过

|

来源于php中文网

原创

用 Prometheus + Grafana 监控 Python 应用的核心是定义、暴露和查询指标;常用 prometheus-client 库通过 /metrics HTTP 接口暴露 Counter、Gauge 等指标,Prometheus 抓取后由 Grafana 可视化,支持 rate() 处理重启断点。

python性能监控项目教程_prometheusgrafana结合实践

用 Prometheus + Grafana 监控 Python 应用,核心是暴露指标、采集数据、可视化展示。关键不在堆工具,而在理清指标怎么定义、怎么暴露、怎么查。

Python 服务如何暴露指标

最常用的是 prometheus-client 库,它提供 HTTP 接口(默认 /metrics),返回符合 Prometheus 格式的文本指标。

安装与基础用法:

  • pip install prometheus-client
  • 在 Flask/FastAPI 中启动一个 MetricsEndpoint 或直接集成 start_http_server(8000)
  • 定义指标类型:Counter(计数)、Gauge(瞬时值)、Histogram(分布)、Summary(分位数)

例如统计请求次数:

立即学习Python免费学习笔记(深入)”;

from prometheus_client import Counter<br>request_count = Counter('http_requests_total', 'Total HTTP Requests')<br><br># 在请求处理逻辑中调用<br>request_count.inc()

Prometheus 怎么抓取 Python 指标

修改 Prometheus 配置文件 prometheus.yml,添加 job:

scrape_configs:<br>  - job_name: 'python-app'<br>    static_configs:<br>      - targets: ['localhost:8000']

确保 Python 进程已运行且端口可访问(如用 curl http://localhost:8000/metrics 能看到指标文本)。Prometheus 默认每 15 秒拉取一次。

Sora
Sora

Sora是OpenAI发布的一种文生视频AI大模型,可以根据文本指令创建现实和富有想象力的场景。

下载

注意点:

  • 生产环境建议用 service discovery(如 Consul、Kubernetes)动态发现目标
  • 避免将 Python 指标端口直接暴露公网;可通过反向代理或 sidecar 方式接入

Grafana 如何连接和画图

在 Grafana 中添加 Prometheus 数据源(URL 填 http://localhost:9090),然后新建 Dashboard。

写查询语句示例:

  • http_requests_total —— 查看原始计数
  • rate(http_requests_total[5m]) —— 每秒平均请求数
  • python_gc_collection_seconds_sum —— GC 耗时(需启用 Python 的 GC 指标)

推荐组合图表:

  • Requests per second(rate + graph)
  • Response time histogram(用 histogram_quantile 计算 P90/P99)
  • Memory usage(Gauge 类型,如 process_resident_memory_bytes

进阶:自动埋点与错误追踪

手动打点易遗漏。可用以下方式增强:

  • 中间件自动记录 HTTP 请求耗时、状态码(FastAPI/Starlette 自带 BaseHTTPMiddleware
  • prometheus_client.values.MultiProcessValue 支持多进程(如 Gunicorn 启动多个 worker)
  • 结合 loggingCounter,把异常日志转为指标(如 error_count.inc()

不复杂但容易忽略:Python 进程重启后 Counter 会重置,Prometheus 的 rate() 函数能自动处理断点,无需额外干预。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
Python Flask框架
Python Flask框架

本专题专注于 Python 轻量级 Web 框架 Flask 的学习与实战,内容涵盖路由与视图、模板渲染、表单处理、数据库集成、用户认证以及RESTful API 开发。通过博客系统、任务管理工具与微服务接口等项目实战,帮助学员掌握 Flask 在快速构建小型到中型 Web 应用中的核心技能。

104

2025.08.25

Python Flask Web框架与API开发
Python Flask Web框架与API开发

本专题系统介绍 Python Flask Web框架的基础与进阶应用,包括Flask路由、请求与响应、模板渲染、表单处理、安全性加固、数据库集成(SQLAlchemy)、以及使用Flask构建 RESTful API 服务。通过多个实战项目,帮助学习者掌握使用 Flask 开发高效、可扩展的 Web 应用与 API。

81

2025.12.15

什么是中间件
什么是中间件

中间件是一种软件组件,充当不兼容组件之间的桥梁,提供额外服务,例如集成异构系统、提供常用服务、提高应用程序性能,以及简化应用程序开发。想了解更多中间件的相关内容,可以阅读本专题下面的文章。

182

2024.05.11

Golang 中间件开发与微服务架构
Golang 中间件开发与微服务架构

本专题系统讲解 Golang 在微服务架构中的中间件开发,包括日志处理、限流与熔断、认证与授权、服务监控、API 网关设计等常见中间件功能的实现。通过实战项目,帮助开发者理解如何使用 Go 编写高效、可扩展的中间件组件,并在微服务环境中进行灵活部署与管理。

226

2025.12.18

Python FastAPI异步API开发_Python怎么用FastAPI构建异步API
Python FastAPI异步API开发_Python怎么用FastAPI构建异步API

Python FastAPI 异步开发利用 async/await 关键字,通过定义异步视图函数、使用异步数据库库 (如 databases)、异步 HTTP 客户端 (如 httpx),并结合后台任务队列(如 Celery)和异步依赖项,实现高效的 I/O 密集型 API,显著提升吞吐量和响应速度,尤其适用于处理数据库查询、网络请求等耗时操作,无需阻塞主线程。

28

2025.12.22

Python 微服务架构与 FastAPI 框架
Python 微服务架构与 FastAPI 框架

本专题系统讲解 Python 微服务架构设计与 FastAPI 框架应用,涵盖 FastAPI 的快速开发、路由与依赖注入、数据模型验证、API 文档自动生成、OAuth2 与 JWT 身份验证、异步支持、部署与扩展等。通过实际案例,帮助学习者掌握 使用 FastAPI 构建高效、可扩展的微服务应用,提高服务响应速度与系统可维护性。

251

2026.02.06

pip安装使用方法
pip安装使用方法

安装步骤:1、确保Python已经正确安装在您的计算机上;2、下载“get-pip.py”脚本;3、按下Win + R键,然后输入cmd并按下Enter键来打开命令行窗口;4、在命令行窗口中,使用cd命令切换到“get-pip.py”所在的目录;5、执行安装命令;6、验证安装结果即可。大家可以访问本专题下的文章,了解pip安装使用方法的更多内容。

373

2023.10.09

更新pip版本
更新pip版本

更新pip版本方法有使用pip自身更新、使用操作系统自带的包管理工具、使用python包管理工具、手动安装最新版本。想了解更多相关的内容,请阅读专题下面的文章。

436

2024.12.20

C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

76

2026.03.11

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
最新Python教程 从入门到精通
最新Python教程 从入门到精通

共4课时 | 22.5万人学习

Django 教程
Django 教程

共28课时 | 4.9万人学习

SciPy 教程
SciPy 教程

共10课时 | 1.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号