You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TGI容器指标收集的时间过滤配置及相关工具咨询

TGI容器指标收集的时间过滤与相关问题解答

一、特定时段/日期的指标收集过滤方案

TGI本身没有内置的时间范围过滤功能,得从采集端或中间层入手实现,以下是几种可行方案:

1. Prometheus采集端控制(推荐)

如果已经在用Prometheus,可通过两种方式实现:

  • 定时启停采集任务:用cron脚本在周一至周五9点修改Prometheus配置,开启对TGI的scrape;17点再修改配置关闭采集,每次修改后调用curl -X POST http://prometheus:9090/-/reload热加载配置。
  • 时间条件过滤的代理层:用Nginx做TGI /metrics的代理,只在指定时间转发请求,其他时间返回空响应。示例Nginx配置:
server {
    listen 8080;
    location /metrics {
        # 匹配周一至周五(1-5),且小时在9-16(覆盖9:00到16:59:59)
        if ($time_wday ~ ^[1-5]$) {
            if ($hour ~ ^[9-16]$) {
                proxy_pass http://tgi-container:8080/metrics;
            }
            return 200 "";
        }
        return 200 "";
    }
}

之后让Prometheus采集这个代理的/metrics端点即可。

2. 定时脚本+Pushgateway推送

写个简单的Shell/Python脚本,用cron定时在指定时段拉取TGI指标,再推送到Prometheus Pushgateway,完全由定时任务控制采集节奏。示例Shell脚本:

#!/bin/bash
curl http://tgi-container:8080/metrics | curl --data-binary @- http://pushgateway:9091/metrics/job/tgi_custom

对应的cron任务:

0 9-16 * * 1-5 /path/to/your/script.sh

二、TGI指标的累加规则

TGI的指标分两类,累加逻辑不同:

  • 计数器类指标(比如requests_total、tokens_generated_total):默认从容器启动时开始持续累加,不会自动每日重置。如果需要每日统计的增量,可通过Prometheus记录规则实现:
groups:
- name: tgi_daily_metrics
  rules:
  - record: tgi:requests_total:daily
    expr: increase(requests_total{job="tgi"}[1d])
  • 瞬时状态类指标(比如current_requests、gpu_utilization):是采集时的实时值,不存在累加问题,每次采集都是当前状态。

三、现成工具/方法汇总

  • Prometheus + cron脚本:最常用的方案,灵活控制采集启停。
  • Nginx代理过滤:轻量级中间层,无需修改Prometheus核心配置。
  • Pushgateway + 定时脚本:完全由定时任务主导采集节奏,适配复杂时间规则。
  • Prometheus记录规则:将容器级累加指标转换为每日增量,满足每日重置需求。

内容的提问来源于stack exchange,提问作者Gireesh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 00:36:02