SpringAI实践-集成可观测

之前进到SpringAI源码中看到不仅有很多Advisor字眼的类,还有很多Observation 可观测字眼的类,SpringAI怎么只用可观测呢,比如当前的Agent一天使用了多少token,然后由于模型厂商都是按百万token使用量来计费的,通过知道使用了多少token,就可以计算出使用模型的成本是多少。

集成可观测步骤:

1、项目中,添加依赖:

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
</dependency>

actuator 负责暴露要监控指标的端点
micrometer-registry-prometheus这个负责将SpringAI生成的指标数据生成prometheus可接收的类型

2、properties文件中配置actuator暴露的监控端口,当前加了一个prometheus端口
management.endpoints.web.exposure.include=prometheus,health,info,metrics
重启项目,然后调用 http://localhost:8080/actuator/prometheus 这个接口,可以看到设计ai的一下指标:

image

 比如上面可以看到当前token的输入消耗,输出消耗和总的消耗

3、部署promethues和grafana

promethues中的prometheus.yml 添加配置

image

 这个说明拉取的配置,间隔15秒拉取,拉取的url是本地的localhost:8080/actuator/prometheus这个接口

4、promethues和grafana都配置好后,进入到grafana配置数据源为本地的prometheus

image

然后就可以在Explore目录中查看到涉及ai调用相关的数据

image

 多跟agent对话几次后,可以看到下面的数据

image

 也就是把之前接口看到的数据用可视化的方式展示了。

5、编辑看板,展示一天的总消耗:

新建一个看板,然后添加如下语句:

sum(increase(gen_ai_client_token_usage_total{gen_ai_token_type="total"}[24h]))

之后可以看到如下效果:

image

 

 

posted @ 2026-01-11 21:14  hotMemo  阅读(12)  评论(0)    收藏  举报