> 原始 Markdown 孪生体（构建期从源 Markdown 生成）。渲染页：https://docs.gatellm.io/zh-CN/console/settings · 文档索引：https://docs.gatellm.io/zh-CN/llms.txt


# 设置：系统与遥测

控制台 → **设置**（admin、monitor 可见）按子页签组织。本页讲其中的**系统**与**遥测**两个子页签；联网搜索见 [联网搜索](/zh-CN/console/search.md)，SSO 见 [配置 SSO 企业登录](/zh-CN/howto/configure-sso.md)，计费见 [配置模型定价与查看月度成本](/zh-CN/howto/setup-pricing-and-billing.md)，审计见 [审计与安全配置](/zh-CN/reference/audit-and-security-config.md)。

## 系统（#settings/system）

运维诊断面板，读起来像 `kubectl describe` / `htop`：展示这台网关实例的**构建 / 运行时标识**、**上游健康**与**实时内存诊断**。

- **构建 / 运行时标识**：版本号、构建信息、实例标识等，用于排查时确认「跑的是哪个构建、哪台实例」。
- **授权信息**：当前授权（`LICENSE_KEY`）的面板——套餐（专业版 / 企业版）、计费周期（月付 / 年付）、内存总额、实例数上限、单实例内存、授权编号，以及联网校验的**上次联网时间**与**上次结果**（有效 / 无效）。两个告警态：**宽限期**（上次联网判定无效，宽限剩余天数倒计时，到期降级为免费版，提示尽快续费或换 key）；**集群超限**（对账检测到实例数 / 总内存超出授权额度——仅告警、网关继续服务，提示缩减实例或提升配额）。免费版与激活方式见 [许可与授权状态](/zh-CN/reference/licensing.md)。
- **上游健康**：准入资源的逐实例读数 + 逐上游的坏死链接状态，故障时打开控制台第一眼就能定位哪个上游出了问题：
  - **状态结论**显示在面板标题右侧（绿点=所有上游健康；黄/红点=受影响/饱和的上游数）；坏死链接预算与判定阈值以徽标形式并排显示。
  - **上游表**：只列出**受影响**的上游（坏死链接数 > 0 或已饱和），逐行给出上游名、坏死链接数（`当前 / 预算`）与状态（饱和为红、计数中为黄），仅故障期间出现。
  - **逐实例准入表**：每实例一行——在途连接、排队深度、处理通行证、fd 用量、**数据库连接池**（打开/上限、等待中两列，悬停看逐池拆分）、坏死链接。**池等待中 > 0 是登录悬崖的先兆信号**——数据面正在挤占 DB 连接。多实例模式下集群合计以小字脚注形式附在表下方。
  - **多实例（Redis）模式**：每个实例每 3 秒广播自己的上述摘要（含各自的连接池读数），端点做集群级聚合——坏死链接数按上游**求和**、饱和按**任一实例饱和即饱和**、在途连接 / 排队深度 / 通行证等可加读数求和；fd 用量与连接池是进程级读数、求和无意义，只出现在逐实例表中。Redis 读取失败时降级回所命中实例的本机视图。Memory（单实例）模式语义不变。
  - 数据来源是只读端点 `/console/api/upstream-health`（3 秒轮询），计数为**实时在途值**，请求一结束即清零，无失败记忆。
- **内存诊断**：RSS / 当前用量 / 上限 + 使用率条；把 OOM 触发值拆成匿名内存（RSS）+ 页缓存 + 少量残留，暴露「只看看不出来的缺口」；另有内存水位压力与堆归还健康度两条诊断条，把抽象数字变成可读的判断。
- **诊断下载**：一键导出诊断包（`protoflux-diagnostic-<时间戳>.tar.gz`，各系统归档工具可双击直接解开），供离线分析内存或准入问题。包内文件：

  | 文件 | 内容 |
  |------|------|
  | `meta.txt` | 构建 / 运行时标识 + 分配器配置 |
  | `heap.txt` | jemalloc 堆 profile |
  | `jemalloc-stats.json` | 分配器统计 |
  | `upstream-health.json` | 上游坏死链接 / 饱和快照 + 连接预算 / fd 用量（多实例模式为集群聚合 + 逐实例明细） |

  各节**独立采集**——某一节采集失败只在该文件里写入说明，不影响整包。

内存准入与溢写的相关环境变量见 [环境变量配置参考 → 内存准入与溢写](/zh-CN/reference/configuration.md#memory-admission-spill)；上游故障隔离与 fd 预算的相关配置见同页 [监听与请求限制](/zh-CN/reference/configuration.md#listen-and-request-limits) 与 [上游连接重试与路由亲和](/zh-CN/reference/configuration.md#upstream-retry-affinity)；内存异常升高的排障见 [从症状出发排障](/zh-CN/usecases/troubleshooting.md)。

## 遥测（#settings/telemetry）

一个开关：**问题上报**——是否允许本网关向 Sentry 发送问题与崩溃报告。

- **关闭后立即生效**（前后端都生效）：后端不再上报（事件在发送前被丢弃、性能采样置 0）；前端新浏览器会话不再初始化 Sentry，已打开的会话由 tunnel 端点强制拒绝。
- **持久化**：设置写入数据库（`config_settings` 表的 `issue_reporting` 键），重启后保留。
- **多实例同步**：Redis 模式下经配置 reload 广播同步到其他节点。
- 该开关只控制问题上报，不影响网关本身功能；此页修改仅 admin 可操作。

> 编译进镜像的 Sentry DSN 由 `SENTRY_DSN` / `SENTRY_FRONTEND_DSN` 等环境变量决定（见 [环境变量配置参考](/zh-CN/reference/configuration.md)）；本开关是在此基础上的一键总闸，无需改环境变量或重启。

## 常见问题

**Q：monitor 能改遥测开关吗？**
不能。设置页对 monitor 可见（只读），修改类操作（含遥测开关）仅 admin。

**Q：关掉问题上报会丢什么？**
只停止向 Sentry 发送问题/崩溃报告；网关运行、日志、统计都不受影响。

**Q：上游健康显示某上游「饱和」了，请求会怎样？**
该模型若还有其他可用上游，请求自动改走健康上游；若候选上游全部饱和，请求立即 503 + Retry-After，而不是无限排队。饱和判定是纯实时在途计数——上游恢复的瞬间立即满血可用，无需任何手工解禁。

**Q：「诊断下载」按钮为什么是灰的？**
两种情况：非 admin 角色不可导出；或当前实例没有 jemalloc 堆 profiler（仅 Linux 容器构建有），此时 `/debug/diagnostic-bundle` 本就返回 501，按钮直接禁用避免误导。

**下一步**：[控制台登录与角色](/zh-CN/console/login-and-roles.md) 看页面权限；[环境变量配置参考](/zh-CN/reference/configuration.md) 看 Sentry 相关变量；[审计与安全配置](/zh-CN/reference/audit-and-security-config.md) 看审计。
