推理服务上线后,采集范围、调用链粒度和日志行为往往需要随排查进度反复调整:定位问题时要打开更细的粒度,涉及敏感数据或日志量过大时又要及时收敛。接入 ARMS Python 探针后,vLLM/SGLang 的这些采集行为均可在云监控 2.0 控制台动态调整,多数修改无需重启推理引擎。本文按控制台上的四个面板逐项说明每个开关的含义、默认值与生效条件,并给出对应的环境变量,便于在应用启动前静态指定采集行为。
进入采集配置页面
本文适用于已通过 ARMS Python 探针接入 vLLM/SGLang 推理引擎的应用,接入流程请参见对 vLLM/SGLang 推理引擎进行可观测。
登录云监控 2.0 控制台。
选择应用可观测 > 应用监控,单击目标推理服务名称。
进入应用配置页签,按需调整下列面板中的开关。
与推理引擎相关的配置分布在以下四个面板:探针开关设置、AI 应用采集配置、vLLM 推理引擎配置、SGLang 推理引擎配置。下文表格的“默认值”指引擎或探针自身的默认取值:控制台不下发该项时,探针读取环境变量的取值;环境变量也未设置时,使用引擎或探针自身的默认值。
探针开关设置
LLM(大语言模型)服务分组下有 vllm-plugin 和 sglang-plugin 两个勾选项,控制探针启动时是否加载对应插件。取消勾选后探针不再插桩该引擎,调用链和指标都不会产生。此开关在探针加载阶段读取,修改后需要重启应用才能生效;如需临时停止采集,使用下文各面板的采集开关即可,无需重启。
AI 应用采集配置
开关 | 默认值 | 说明 |
是否采集大模型输入输出内容 | 开启 | 是否将请求的 Prompt 与模型输出记录到可观测数据中。涉及敏感数据时可关闭。 |
大模型输入输出内容字段长度限制 | 8192 | 单条输入或输出内容采集的最大字符数,超出部分截断。 |
大模型输入输出内容采集策略 | 记录到 Span 属性 | 采集内容的写入位置,可选记录到 Span 属性(随调用链查看)或记录到日志事件(内容体积较大时更合适)。 |
是否采集多模态数据 | 关闭 | 仅对客户端框架埋点(LangChain、LiteLLM、DashScope、Google ADK 等)生效,vLLM/SGLang 引擎侧插桩不消费该开关。 |
关闭输入输出内容采集后,vLLM 侧的 chat {model}、text_completion {model} 入口 Span 整体不再产生,引擎内部的 llm_request 及其子 Span 不受影响;embeddings {model}、rerank {model} 入口 Span 同样不受影响。是否为这部分内容注册埋点在探针启动时就已确定,因此该开关对入口 Span 的影响需要重启引擎后才会改变。
vLLM 推理引擎配置
开关 | 默认值 | 说明 |
vLLM 是否采集指标 | 探针默认开启 | 探针是否从推理引擎读取指标。关闭后探针不再采集;采集到之后能否上报,还取决于自定义配置页的是否上报指标开关。 |
vLLM 采集粒度 | 探针默认 1 | 调用链采集的详细程度。 |
vLLM 请求日志 | 引擎默认关闭 | 打印请求接收与生命周期日志(Received request、Added request、aborted、failed)。需 vLLM 0.10.1 及以上版本,对新请求生效。 |
vLLM 迭代详情日志 | 引擎默认关闭 | EngineCore 每次迭代打印上下文阶段与生成阶段的请求数、token 数与迭代耗时,用于排查批次打不满、请求饥饿等调度异常。需 vLLM 0.14.0 及以上版本。 |
vLLM 日志关联 TraceId | 探针默认关闭 | 向 vLLM 日志前缀注入 TraceId 与 SpanId,用于日志与调用链互查。 |
vLLM 日志级别 | 引擎默认 INFO | 动态调整 vLLM 日志级别,同时调整 Logger 与其 Handler,避免 DEBUG 日志被 Handler 拦截。 |
采集粒度设置为 2 时,探针会强制为请求开启 logprobs 计算以获取 token 级明细,改变引擎的实际计算行为,并带来明显的性能与数据量开销;单个 Span 的 Event 数量与迭代次数成正比,可能超过 OpenTelemetry 默认的 128 条上限而被丢弃,该上限由 OTEL_SPAN_EVENT_COUNT_LIMIT 控制。建议仅在排查问题期间临时开启采集粒度 2。迭代详情日志逐迭代全量输出且不做采样,高吞吐场景下日志量很大,排查完成后建议及时关闭。
SGLang 推理引擎配置
开关 | 默认值 | 说明 |
SGLang 是否采集指标 | 开启 | 探针是否从推理引擎读取指标。开启时探针会补齐引擎的请求级指标统计(TTFT、token 间延迟、token 总量、端到端耗时),无需为此重启引擎并添加 |
SGLang 采集粒度 | 3 + 复合阶段 | SGLang 原生 OTel 埋点的 Span 树深度,数值越大越详细。仅在引擎的原生 tracing 开启时有效:探针会在引擎启动时自动打开该开关,无需手动添加 |
SGLang 请求日志 | 引擎默认关闭 | 动态开关 TokenizerManager 的请求日志。 |
SGLang 请求日志详细度 | 引擎默认 2 | 请求日志打印的详细程度,数值越大内容越多。 |
SGLang 日志级别 | 引擎默认 INFO | 动态调整 |
上述开关在首次覆盖时会记录引擎的原始取值,配置项从控制台移除后自动恢复。关闭指标采集只停止探针自身的上报,不会关闭引擎原生的 Prometheus 指标。
附录:对应的环境变量
应用启动前如需静态指定采集行为,可使用下表的环境变量。控制台配置优先于环境变量,控制台未下发该项时才回落到环境变量。
控制台开关 | 环境变量 | 控制台配置键 |
插件总开关 (vLLM) |
|
|
插件总开关 (SGLang) |
|
|
是否采集大模型输入输出内容 |
|
|
大模型输入输出内容字段长度限制 |
|
|
大模型输入输出内容采集策略 |
|
|
vLLM 是否采集指标 |
|
|
vLLM 采集粒度 |
|
|
vLLM 请求日志 | — |
|
vLLM 迭代详情日志 | — |
|
vLLM 日志关联 TraceId | — |
|
vLLM 日志级别 | — |
|
SGLang 是否采集指标 |
|
|
SGLang 采集粒度 | — |
|
SGLang 请求日志 | — |
|
SGLang 请求日志详细度 | — |
|
SGLang 日志级别 | — |
|