在CES查看MaaS调用数据和监控指标
云监控服务CES提供云服务监控功能,支持查看MaaS预置服务、我的服务在指定时间段内的调用数据和监控指标详情,包括RPM、TPM、请求失败率、输入Tokens数、输出Tokens数等信息,并以分钟为最小时间粒度展示数据趋势,帮助您了解服务的使用情况和性能变化,从而更有效地进行模型评估、问题定位、故障排除和性能优化。
- 资源消耗监控:跟踪模型服务的Tokens使用量,避免超额使用。
- 成本分析:根据输入/输出Tokens的分布,优化调用策略以降低成本。
- 性能指标:支持查看模型的多种常见性能指标,进行性能优化。
- 服务优化:通过分析调用频率与Tokens消耗的关系,调整服务配置或扩容计划。
- 异常排查:快速定位特定时间段的调用量激增、异常消耗和调用失败问题。
云监控服务最大支持4个层级维度,维度编号从0开始,编号3为最深层级。例如监控指标中的维度信息为“maas_api_id,maas_key_id”时,表示对应的监控指标的维度存在层级关系,且“maas_api_id”为0层,“maas_key_id”为1层。
约束限制
- 统计范围:
- 仅统计预置服务、我的服务的调用数据。
- 实例列表:如实例超过一定时长(大于3小时)未上报监控数据,将不会展示在实例列表中。
- 实例列表-视图页面:如实例指标超过一定时长(大于1小时)未上报监控数据,则该指标将不会展示在视图页面。
- 时间范围限制:
- 支持预设时间段:近15分钟、近30分钟、近1小时、近2小时、近3小时、近12小时、近24小时、近7天、近14天、近30天。
- 自定义时间段:最长不超过30天。
计费说明
- 云服务监控功能本身不收费。
- 在MaaS进行模型调用时,可能涉及到相关资源收费。具体信息,请参见在线推理计费项。
前提条件
预置服务或我的服务满足以下条件:
监控指标的命名空间
SYS.MaaS
命名空间是对一组资源和对象的抽象整合。在同一个集群内可创建不同的命名空间,不同命名空间中的数据彼此隔离。使得它们既可以共享同一个集群的服务,也能够互不干扰。
查看服务调用的监控数据
- 登录云监控服务管理控制台,在左侧导航栏单击“云服务监控”。
- 在“云服务监控”页面,单击“MaaS MaaS”看板名称。
- 在“资源详情”页签的实例列表,查看服务的整体情况。

- 在实例列表的“操作”列,单击目标服务对应的“查看监控指标”。
- 在“资源实例”页签或“API Key”页签,查看服务的监控指标详情。
监控指标说明
- 监控指标默认保留两位小数。
- 首Token时延和增量Token时延仅统计流式响应。受限于模型版本约束,部分模型版本在非流式场景下不支持该指标展示,请将该服务的模型升级至最新版本后查看。关于升级模型服务的操作,请参见升级模型服务。
- 不同监控周期对应聚合方式的聚合时间不同,详情请参见查看监控视图。
| 指标ID | 指标名称 | 指标含义 | 单位 | 进制 | 维度 | 监控周期 |
|---|---|---|---|---|---|---|
| rpm | RPM | 每分钟处理的请求数。 | count/min | - |
| 1分钟 |
| tpm | TPM | 每分钟处理的Tokens数(输入+输出)。 | thousand/min | - |
| 1分钟 |
| req_count_4xx | 4XX数量 | 服务调用错误4XX次数。 | count/min | - |
| 1分钟 |
| req_count_5xx | 5XX数量 | 服务调用错误5XX次数。 | count/min | - |
| 1分钟 |
| req_count | 调用总量 | 调用的总量。 | count/min | - |
| 1分钟 |
| req_count_2xx | 调用成功次数 | 2XX成功的次数。 | count/min | - |
| 1分钟 |
| req_count_error | 调用失败次数 | 调用失败的次数。
| count/min | - |
| 1分钟 |
| req_error_rate | 请求失败率 | 调用失败次数占调用总次数的比例。 | % | - |
| 1分钟 |
| req_error_4xx_rate | 请求4XX失败率 | 调用失败4XX次数/调用总次数。 | % | - |
| 1分钟 |
| req_error_5xx_rate | 请求5XX失败率 | 调用失败5XX次数/调用总次数。 | % | - |
| 1分钟 |
| prompt_tokens | 输入tokens数 | 服务调用输入Tokens数。 | thousand | - |
| 1分钟 |
| completion_tokens | 输出tokens数 | 服务调用输出Tokens数。 | thousand | - |
| 1分钟 |
| total_tokens | 调用总tokens数 | 服务调用总Tokens数。 | thousand | - |
| 1分钟 |
| prompt_tokens_avg | 平均输入token长度 | 输入Token平均长度。 | thousand | - |
| 1分钟 |
| completion_tokens_avg | 平均输出token长度 | 输出Token平均长度。 | thousand | - |
| 1分钟 |
| prompt_tokens_p50 | 输入token TP 50 | 50%的输入Token大小低于该值。 | thousand | - |
| 1分钟 |
| prompt_tokens_p80 | 输入token TP 80 | 80%的输入Token大小低于该值。 | thousand | - |
| 1分钟 |
| prompt_tokens_p90 | 输入token TP 90 | 90%的输入Token大小低于该值。 | thousand | - |
| 1分钟 |
| prompt_tokens_p99 | 输入token TP 99 | 99%的输入Token大小低于该值。 | thousand | - |
| 1分钟 |
| completion_tokens_p50 | 输出token TP 50 | 50%的输出Token大小低于该值。 | thousand | - |
| 1分钟 |
| completion_tokens_p80 | 输出token TP 80 | 80%的输出Token大小低于该值。 | thousand | - |
| 1分钟 |
| completion_tokens_p90 | 输出token TP 90 | 90%的输出Token大小低于该值。 | thousand | - |
| 1分钟 |
| completion_tokens_p99 | 输出token TP 99 | 99%的输出Token大小低于该值。 | thousand | - |
| 1分钟 |
| prompt_tokens_max | 最长输入token长度 | 输入Token最大值。 | thousand | - |
| 1分钟 |
| completion_tokens_max | 最长输出token长度 | 输出Token最大值。 | thousand | - |
| 1分钟 |
| ttft | TTFT(AVG) | 首Token时延,即从接收请求到生成第一个输出Token所需的时间。 | ms | - |
| 1分钟 |
| tpot | TPOT(AVG) | 增量Token时延,即生成后续每个输出Token所需的时间间隔。 | ms | - |
| 1分钟 |
| latency_avg | 平均响应时延 | 单位时间内成功请求的响应时间平均值。 | ms | - |
| 1分钟 |
| ttft_p50 | 首token时延 TP50 | 50%的首Token时延低于该值。 | ms | - |
| 1分钟 |
| ttft_p80 | 首token时延 TP80 | 80%的首Token时延低于该值。 | ms | - |
| 1分钟 |
| ttft_p90 | 首token时延 TP90 | 90%的首Token时延低于该值。 | ms | - |
| 1分钟 |
| ttft_p99 | 首token时延 TP99 | 99%的首Token时延低于该值。 | ms | - |
| 1分钟 |
| ttft_max | 最长首token时延 | 首Token时延最大值。 | ms | - |
| 1分钟 |
| tpot_p50 | 增量 token时延 TP50 | 50%的增量Token时延低于该值。 | ms | - |
| 1分钟 |
| tpot_p80 | 增量 token时延 TP80 | 80%的增量Token时延低于该值。 | ms | - |
| 1分钟 |
| tpot_p90 | 增量 token时延 TP90 | 90%的增量Token时延低于该值。 | ms | - |
| 1分钟 |
| tpot_p99 | 增量 token时延 TP99 | 99%的增量Token时延低于该值。 | ms | - |
| 1分钟 |
| tpot_max | 最长增量 token时延 | 增量Token时延最大值。 | ms | - |
| 1分钟 |
| average_generation_time | Average generation time | 从输入到生成输出的平均时间。 | s | - |
| 1分钟 |
| req_count_400 | 400 Quantity | 服务调用错误400次数。 | count/min | - |
| 1分钟 |
| req_count_401 | 401 Quantity | 服务调用错误401次数。 | count/min | - |
| 1分钟 |
| req_count_403 | 403 Quantity | 服务调用错误403次数。 | count/min | - |
| 1分钟 |
| req_count_404 | 404 Quantity | 服务调用错误404次数。 | count/min | - |
| 1分钟 |
| req_count_413 | 413 Quantity | 服务调用错误413次数。 | count/min | - |
| 1分钟 |
| req_count_429 | 429 Quantity | 服务调用错误429次数。 | count/min | - |
| 1分钟 |
| req_count_500 | 500 Quantity | 服务调用错误500次数。 | count/min | - |
| 1分钟 |
| req_count_503 | 503 Quantity | 服务调用错误503次数。 | count/min | - |
| 1分钟 |
| req_count_504 | 504 Quantity | 服务调用错误504次数。 | count/min | - |
| 1分钟 |
CES支持通过API接口查询监控数据,具体操作请参见查询监控数据和批量查询监控数据。
对于有多层测量维度的测量对象,使用接口查询监控指标时,需要代入具体指标的维度层级关系。
- 示例一:需要查询MaaS中错误400次数(req_count_400),该指标的维度信息为“maas_api_id,maas_key_id”,表示maas_api_id为0层,maas_key_id为1层。
- 通过API查询单个监控指标时,maas_key_id的维度信息代入样例如下:
dim.0=maas_api_id,/modelarts-infer-v2-test/v1/chat/completions-06024304b180d5090fbac00141b6cae0&dim.1=maas_key_id,APITEST-dontdelete-04f258c83e00d5a50f38c00df8021700
其中,/modelarts-infer-v2-test/v1/chat/completions-06024304b180d5090fbac00141b6cae0和APITEST-dontdelete-04f258c83e00d5a50f38c00df8021700分别为maas_api_id和maas_key_id的维度值,具体获取方法请参见维度说明。
- 通过API批量查询监控指标时,maas_key_id的维度信息代入样例如下:
"dimensions": [ { "name": "maas_api_id", "value": "/modelarts-infer-v2-test/v1/chat/completions-06024304b180d5090fbac00141b6cae0" }, { "name": "maas_key_id", "value": "APITEST-dontdelete-04f258c83e00d5a50f38c00df8021700" } ]其中,/modelarts-infer-v2-test/v1/chat/completions-06024304b180d5090fbac00141b6cae0和APITEST-dontdelete-04f258c83e00d5a50f38c00df8021700分别为maas_api_id和maas_key_id的维度值,具体获取方法请参见维度说明。
- 通过API查询单个监控指标时,maas_key_id的维度信息代入样例如下:
- 示例二:需要查询MaaS中调用总量(req_count),该指标的维度信息为“maas_service_name,maas_key_id”,表示maas_service_name为0层,maas_key_id为1层。
- 通过API查询单个监控指标时,maas_key_id的维度信息代入样例如下:
dim.0=maas_service_name,fa2a49ee-10b5-446a-b109-664700d5d01b-04f258c83e00d5a50f38c00df8021700&dim.1=maas_key_id,APITEST-dontdelete-04f258c83e00d5a50f38c00df8021700
其中,fa2a49ee-10b5-446a-b109-664700d5d01b-04f258c83e00d5a50f38c00df8021700和APITEST-dontdelete-04f258c83e00d5a50f38c00df8021700分别为maas_service_name和maas_key_id的维度值,具体获取方法请参见维度说明。
- 通过API批量查询监控指标时,maas_key_id的维度信息代入样例如下:
"dimensions": [ { "name": "maas_service_name", "value": "fa2a49ee-10b5-446a-b109-664700d5d01b-04f258c83e00d5a50f38c00df8021700" }, { "name": "maas_key_id", "value": "APITEST-dontdelete-04f258c83e00d5a50f38c00df8021700" } ]其中,fa2a49ee-10b5-446a-b109-664700d5d01b-04f258c83e00d5a50f38c00df8021700和APITEST-dontdelete-04f258c83e00d5a50f38c00df8021700分别为maas_service_name和maas_key_id的维度值,具体获取方法请参见维度说明。
- 通过API查询单个监控指标时,maas_key_id的维度信息代入样例如下:
维度说明
| Key | Value |
|---|---|
| maas_api_id | API的ID。 该取值可通过云监控服务管理控制台MaaS看板的“资源详情”页签获取。 图1 API ID |
| maas_key_id | API Key的ID。 该取值可通过云监控服务管理控制台MaaS看板实例监控详情页的“API Key”页签获取。 图2 API Key ID |
| maas_service_name | 服务ID。 该取值可通过云监控服务管理控制台MaaS看板的“资源详情”页签获取。 图3 服务ID |


