
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
service-metrics-gatherer是一个指标收集器服务,用于从多个数据源(如Elasticsearch、RabbitMQ、PostgreSQL)收集、处理和存储指标数据,并支持与Grafana集成以展示可视化仪表盘。该服务通过环境变量提供灵活配置,可控制指标收集时间窗口、数据存储期限、日志级别、SSL连接及模型自动删除策略等核心功能。
适用于需要集中监控多个服务指标的场景,包括但不限于:
| 环境变量 | 默认值 | 描述 |
|---|---|---|
| ES_HOST | - | Elasticsearch主机地址,格式可为http://elasticsearch:9200,或包含用户名密码(如http://user:pass@elasticsearch:9200) |
| 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
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务