跳到主要内容

指标与日志

AISIX AI 网关会输出多种运行时遥测。Prometheus 指标展示整体流量趋势,访问日志和响应头帮助解释单个请求,用量事件则是导出器和核算工作流使用的请求记录。

每种来源回答不同运维问题:指标展示聚合行为,日志和响应头帮助调查特定响应,用量事件供导出和核算工作流使用。

遥测来源

AISIX 暴露四类可以配合使用的遥测来源。

Prometheus 指标

Prometheus 指标是观察流量趋势、延迟、token 计数、成本计数、限流结果、缓存行为和导出器投递健康状态的最佳起点。

AISIX 默认通过专用指标监听器在 /metrics 提供 Prometheus 指标。你可以通过启动期可观测性设置修改路径或禁用该端点。

该端点设计上不做认证。请保持专用指标监听器私有。

在启动配置中配置 Prometheus 暴露:

config.yaml
observability:
metrics:
prometheus:
enabled: true
path: "/metrics"

当 Prometheus 需要从非默认地址抓取指标时,请设置监听地址。

抓取默认自托管指标端点:

curl -sS "http://127.0.0.1:9090/metrics"
首个请求前指标为空

指标族会在首次观测时按需注册。刚启动后,GET /metrics 可能返回空响应。请先发送一次模型请求,再检查 aisix_requests_totalaisix_tokens_consumed_total 等序列。

AISIX 使用 aisix_ 前缀输出原生指标名称。可以用指标检查请求量、延迟、token 用量、成本、流量控制结果、路由行为、缓存行为和遥测投递。精确指标名称、标签和标签隐私说明请参见指标参考

自托管和托管部署都会通过专用指标监听器暴露 /metrics,默认绑定到 0.0.0.0:9090

访问日志

访问日志描述单个代理请求。AISIX 会通过进程 logger 将其写入标准错误流,因此它们会出现在运行时收集的容器或进程日志中。

在启动配置中配置进程日志:

config.yaml
observability:
log_level: "info"
access_log: true

进程环境可以通过 RUST_LOG 环境变量覆盖已配置的日志级别。

代理请求完成时会输出访问日志条目。当相关值可用时,条目会包含 method、path、status、latency、provider、model、API Key ID、request ID、token 计数和路由结果等字段。

当前版本中 access-log 字段为保留字段。代理处理器仍会输出结构化访问日志,但没有单独的访问日志格式或 sink 设置。当日志需要离开网关主机时,请使用运行时日志流水线收集标准错误流。

响应头

响应头提供调用方可见的关联和路由提示。在受支持路径上,它们可以标识请求、缓存结果、重试时机或选中的目标。

可以结合响应头、日志和指标,将调用方可见响应关联到后端遥测。精确响应头范围请参见响应头与错误码

用量事件

用量事件是在受支持代理路径完成请求后输出的逐请求记录。当网关能观测到相关值时,它们会包含请求结果、消耗详情、调用方请求的模型别名,以及处理该次尝试的解析模型。

与 Prometheus 指标或访问日志不同,用量事件通常通过 sink 消费,而不是直接在本地端点查看。要将它们发送到 OTLP/HTTP、对象存储、阿里云 SLS 或 Datadog,请配置可观测性导出器。

下一步

你已经了解 AISIX 输出的主要运行时遥测。接下来阅读可观测性导出器,将请求遥测发送到外部目标。