用于 Python 应用的 Prometheus 指标监控库,支持 Flask、Requests 和消息队列消费 者的监控指标自动收集。
Project description
channel-exporter
用于 Python 应用的 Prometheus 指标监控库,支持 Flask、Requests 和消息队列消费者的监控指标自动收集。
功能特性
- ✅ 内置三大监控维度
- Web 服务内部指标(Flask)
- 合作商 HTTP 调用指标(Requests)
- 消息队列消费指标(Consumer)
- ✅ Prometheus 原生集成
- ✅ 灵活的指标桶配置
- ✅ 自动化的指标收集
- ✅ 合作商接口预配置
安装使用
pip install channel_exporter
环境要求
- Python 2.7+
- 可选依赖(安装即监控):
- Flask (Web 服务监控)
- requests (HTTP 调用监控)
- ctec_consumer (消费者监控)
快速开始(Web 服务指标)
# coding:utf-8
import channel_exporter
from flask import Flask
app = Flask(__name__)
@app.get("/")
def hello():
return "Hello World!"
if __name__ == "__main__":
# 初始化监控配置
channel_exporter.__init__("<your_syscode>")
# 启动后访问 /metrics 获取指标
app.run()
配置说明
初始化参数
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
syscode |
str | 是 | 无 | 10位服务编码,格式:大写字母+9位数字 |
inner_metrics_buckets |
tuple | 否 | 默认桶 | Web 服务耗时分布桶 |
partner_http_metrics_buckets |
tuple | 否 | 默认桶 | HTTP 调用耗时分布桶 |
consumer_metrics_buckets |
tuple | 否 | 默认桶 | 消费者耗时分布桶 |
default_metrics_port |
int | 否 | 9166 | 指标默认暴露端口 |
指标说明
Web 服务指标
指标名称:[syscode]_inner_metrics
标签说明:
appid: 应用ID(syscode前4位)application: 系统编码f_code: 请求方系统编码(取自 headers["User-Agent"])path: 请求路径http_status: HTTP 状态码code: 业务响应码method_code: 接口编号
HTTP 调用指标
指标名称:partner_http_metrics
标签说明:
appid: 应用ID(syscode前4位)application: 系统编码partner: 合作商(域名)编号action_code: 动作(路径)编号http_status: HTTP 状态码code: 业务响应码(由业务方定义,-1表示未找到业务响应码)
消费者指标
指标名称:[syscode]_consumer_metrics
标签说明:
appid: 应用ID(syscode前4位)application: 完整syscodef_code: 空值topic: 消息主题code: 处理结果(0成功/1失败)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
channel_exporter-1.1.tar.gz
(8.5 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file channel_exporter-1.1.tar.gz.
File metadata
- Download URL: channel_exporter-1.1.tar.gz
- Upload date:
- Size: 8.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.21
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8414de784289ecab07e8a0197073bc3ce10d7ba0068ffa4b94e14ca6ffdbdf73
|
|
| MD5 |
145550a1655219f91357c355b1ff5878
|
|
| BLAKE2b-256 |
56681f784cafaa41887ab1deffa4f76b3ceb8dd8e712acf78d2837b94cef8dbf
|
File details
Details for the file channel_exporter-1.1-py3-none-any.whl.
File metadata
- Download URL: channel_exporter-1.1-py3-none-any.whl
- Upload date:
- Size: 8.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.21
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ee35301d767b2e3958abf9d1be3c911b903b1c9b7a7f371521ca85da7e550de0
|
|
| MD5 |
8f278d1820a111331669dec9334ee204
|
|
| BLAKE2b-256 |
e55055a42a3db6b3e2fe2fb463f8ce8dfafaa10b17f301a159704dd3652e682b
|