service-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
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429