我们的需求是这样的,将Grafana部署到k8s中,去监控K8s的容器和集群信息,当然想要能监控到数据还得需要部署node-exporter和prometheus,Grafana只是可视化作用,而prometheus主做查询方面的部署供Grafana使用,也就是说我们使用Grafana主要是为了查询语句,将查询语句得到以后再去查找prometheus的数据,这样的一个过程。可能单独这样说没有懂,接下来就讲一下怎么使用Grafanaapi使用把。
首先使用Grafanaapi需要apikey认证,访问Grafana系统可以获取key。
进入界面找到如下所示apikeys
点击右上角绿色按钮addapikey,填写字段属性,主要的Role角色,选择viewer的化有些接口访问不了,选择admin所有的接口都能访问,Timetolive是时间期限,写1d就是一天的意思,1m:一个月,1y代表一年,不填写代表没有期限
点击add按钮以后会返回一个token,将这个token保存,如果弄没了是不能再次查看的。复制标红的token
然后查看Grafana官方api,都是英文但是感觉说的还是挺明白的!我给的链接就是仪表盘相关的接口,因为它的界面全是仪表盘,所以一般都应该是要请求这个接口把
根据官方描述获取仪表盘是要根据某个uid获取的。
postman测试一下请求接口访问k8s容器组资源的uid
你仔细看返回的json数据,全都是下表结构的内容,是没有数据的
那么数据在哪里呢,也可以这样,假设你需要MemoryWorkingSet这个面板的数据,那么在那个面板
点击edit,可以查看到公式一样的查询语句,那个查询语句就代表要查询MemoryWorkingSet的这个值。然后edit进入如下界面
界面上标红的就是查询语句通过这个语句就可以查到想要的值,那么这个查询语句也是需要传参的,里边有instance选择和namespace选择框,那么查询语句里有instance就需要替换,替换原则可以自己查找规律,对照里边f12开发者模式query参数传递就可以了,
那么你肯定要问了我怎么才能知道参数呢,其实都在访问仪表盘返回的数据里,对应的获取数据都会有参数,按照规则进行替换就可,如下这个数据
然后接下来咱们将刚才介绍的参数用postman查询一下,这回访问的就是prometheus的系统查询数据了,这个不需要任何权限就可以访问
接下来,如果想要用java调取,那么就可以用httpclient去传参调用就行了,不过推荐使用okhttp,因为okhttp访问真的快,而且还有同步异步,还是很好的插件的,以上就是全部内容,希望可以帮助你!
文章为作者独立观点,不代表 股票程序化软件自动交易接口观点
马放南山2022-09-24
拉大首套与非首套住房贷款与契税差距,例如首套,贷款3%,契税1%,非首套贷款和税金按商业投资计,如贷款利率6%,契税5%,利得征税25%。把基本生活需要支出与商业投资按股票类型区分,而不是简单按住宅土地性质区分。