reportportal/service-metrics-gathererservice-metrics-gatherer是一个指标收集器服务,用于从多个数据源(如Elasticsearch、RabbitMQ、PostgreSQL)收集、处理和存储指标数据,并支持与Grafana集成以展示可视化仪表盘。该服务通过环境变量提供灵活配置,可控制指标收集时间窗口、数据存储期限、日志级别、SSL连接及模型自动删除策略等核心功能。
适用于需要集中监控多个服务指标的场景,包括但不限于:
| 环境变量 | 默认值 | 描述 |
|---|---|---|
| ES_HOST | - | Elasticsearch主机地址,格式可为[***],或包含用户名密码(如[***]) |
| ES_USER | - | Elasticsearch登录用户名,若在此配置则ES_HOST需仅保留URL(不含用户名密码) |
| ES_PASSWORD | - | Elasticsearch登录密码,若在此配置则ES_HOST需仅保留URL(不含用户名密码) |
| ES_VERIFY_CERTS | "false" | 是否开启SSL证书验证 |
| ES_USE_SSL | "false" | 是否开启SSL连接 |
| ES_SSL_SHOW_WARN | "false" | 是否显示SSL证书验证警告 |
| ES_CA_CERT | "" | CA证书文件路径 |
| ES_CLIENT_CERT | "" | PEM格式SSL客户端证书 |
| ES_CLIENT_KEY | "" | PEM格式SSL客户端密钥 |
| ES_TURN_OFF_SSL_VERIFICATION | "false" | 是否关闭SSL验证(通过使用RequestsHttpConnection替代Urllib3HttpConnection) |
| ES_PROJECT_INDEX_PREFIX | "" | 项目索引前缀,如设置为rp_,则项目ID为34的索引将命名为rp_34(需与service-auto-analyzer保持一致) |
| ES_HOST_GRAFANA_DATASOURCE | - | Grafana可访问的Elasticsearch实例URL,用于创建Grafana数据源 |
| 环境变量 | 默认值 | 描述 |
|---|---|---|
| AMQP_URL | - | RabbitMQ实例URL |
| AMQP_EXCHANGE_NAME | "analyzer" | 模块通信的交换机名称 |
| 环境变量 | 默认值 | 描述 |
|---|---|---|
| GRAFANA_HOST | - | Grafana实例URL,若无需展示仪表盘可留空 |
| 环境变量 | 默认值 | 描述 |
|---|---|---|
| POSTGRES_USER | - | PostgreSQL数据库用户名 |
| POSTGRES_PASSWORD | - | PostgreSQL数据库密码 |
| POSTGRES_DB | - | PostgreSQL数据库名称 |
| POSTGRES_HOST | - | PostgreSQL数据库主机地址 |
| POSTGRES_PORT | - | PostgreSQL数据库端口 |
| 环境变量 | 默认值 | 描述 |
|---|---|---|
| ALLOWED_START_TIME | "22:00" | 允许开始收集指标的时间(24小时制) |
| ALLOWED_END_TIME | "08:00" | 允许结束收集指标的时间(24小时制) |
| TZ | "Europe/Minsk" | 时区,用于解析收集时间窗口 |
| TIME_INTERVAL | - | 指标计算时间间隔,可选值:hour(小时)、minute(分钟)、day(天) |
| 环境变量 | 默认值 | 描述 |
|---|---|---|
| MAX_DAYS_STORE | 500 | 指标数据最大存储天数,自动删除超过此期限的历史数据 |
| 环境变量 | 默认值 | 描述 |
|---|---|---|
| LOGGING_LEVEL | - | 日志级别,可选值:DEBUG、INFO、ERROR |
| 环境变量 | 默认值 | 描述 |
|---|---|---|
| AUTO_ANALYSIS_MODEL_REMOVE_POLICY | "f1-score<=80 | percent_not_found_aa>70" |
| SUGGEST_MODEL_REMOVE_POLICY | "reciprocalRank<=80 | notFoundResults>70" |
创建虚拟环境(示例名称:/venv):
shellpython -m venv /venv
安装依赖库:
shell/venv/bin/pip install --no-cache-dir -r requirements.txt
激活虚拟环境:
shell/venv/bin/activate
启动uwsgi服务器(可调整worker数量、端口等参数):
shell/venv/bin/uwsgi -workers 1 --socket :3031 --wsgi-file main.py --master --http :5000 --threads 1 --lazy-apps 1 --wsgi-env-behavior holy --virtualenv /venv
创建虚拟环境(示例名称:env):
cmdpython -m venv env
激活虚拟环境:
cmdcall env\Scripts\activate.bat
安装依赖库:
cmdpython -m pip install -r requirements_windows.txt
启动服务:
cmdpython main.py


manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务