环球快播:Prometheus的使用
Prometheus 是一个开放性的监控解决方案,用户可以非常方便的安装和使用 Prometheus 并且能够非常方便的对其进行扩展。
(相关资料图)
在Prometheus的架构设计中,Prometheus Server 并不直接服务监控特定的目标,其主要任务负责数据的收集,存储并且对外提供数据查询支持。因此为了能够能够监控到某些东西,如主机的CPU使用率,我们需要使用到Exporter。Prometheus周期性的从Exporter暴露的HTTP服务地址(通常是/metrics)拉取监控样本数据。
Exporter可以是一个相对开放的概念,其可以是一个独立运行的程序独立于监控目标以外,也可以是直接内置在监控目标中。只要能够向Prometheus提供标准格式的监控样本数据即可。
1 环境配置
我们在 Windows 下安装 Prometheus。
1.1 安装 Prometheus
下载地址:https://prometheus.io/download/
选择 Windows 安装包,我选择的是prometheus-2.41.0.windows-amd64
, 下载完成后解压,直接运行 prometheus.exe 即可。
prometheus默认端口是9090,在浏览器访问:http://localhost:9090,即可看到项目已经在运行。
Prometheus 的相关配置可以在 prometheus.yaml 中修改。
1.2 安装 NodeExporter
NodeExporter 是 Prometheus 提供的一个可以采集到主机信息的应用程序,它能采集到机器的 CPU、内存、磁盘等信息。
下载地址: https://prometheus.io/download/
选择 Windows 版本,我选择的是windows_exporter-0.20.0-amd64
,下载完成后直接运行 windows_exporter-0.20.0-amd64.exe 文件即可。
windows_exporter默认端口是9182,通过浏览器访问:http://localhost:9182/metrics,
可以看到当前 node exporter 获取到的当前主机的所有监控数据。 其中 HELP 用于解释当前指标的含义,TYPE 则说明当前指标的数据类型。
2 添加数据源
编辑 prometheus 的配置文件 prometheus.yml
,将scrape_configs
修改为如下内容:
scrape_configs: - job_name: "prometheus" static_configs: - targets: ["localhost:9090"] # node exporter 监控源 - job_name: "prometheus2" static_configs: - targets: ["localhost:8080"]
即配置了两个任务。一个名为 prometheus,其从「localhost:9090」地址读取数据。另一个名为 prometheus2,其从「localhost:8080」地址读取数据。 然后重启 Prometheus。
浏览器访问:http://localhost:9090,在搜索框输入up
,点击execute,即可看到我们配置的两个任务:
3 自定义写入的数据
新建 SpringBoot 项目。完整项目地址:
GitHub地址:https://github.com/Snowstorm0/learn-prometheus
Gitee地址:https://gitee.com/Snowstorm0/learn-prometheus
在 service 层编写插入数据的代码:
public void insertPrometheus() { meterRegistry.clear(); setIdList(); setNameMap(); setValueMap(); for (String id : idList) { List list = new ArrayList<>(); list.add(Tag.of("id", id)); list.add(Tag.of("name", nameMap.get(id))); String name = "insertPrometheus"; double value = Double.parseDouble(String.valueOf(valueMap.get(id))); meterRegistry.gauge(name, Tags.of(list), value); }}
在 controller 层编写读取的代码:
@RequestMapping(value = "/metric/custom", method = RequestMethod.GET,produces = "text/plain; charset=utf-8")public Object metric() {return prometheusMeterRegistry.scrape();}
用浏览器或者Postman访问: http://localhost:8081/metric/custom
可以看到写入的数据:
# HELP insertPrometheus # TYPE insertPrometheus gaugeinsertPrometheus{id="1002",name="钱二",} 1002.0insertPrometheus{id="1001",name="赵一",} 1001.0insertPrometheus{id="1003",name="孙三",} 1003.0
这里的数据是放在本地的,可以供 Prometheus 读取。
4 更新数据
在 service 层编写插入数据的代码:
public void updatePrometheus() { String name = "updatePrometheus"; List list = new ArrayList<>(); list.add(Tag.of("id", "1001")); list.add(Tag.of("name", "测试更新")); // 通过引用的方式将 Prometheus 的 value 存入 valueMap,修改 valueMap 即可修改 Prometheus updateValueMap.put("1001", meterRegistry.gauge(name, Tags.of(list), new AtomicDouble(0))); for (int value = 0; value < 12; value++) { try { updateValueMap.get("1001").set(value); // 修改 valueMap 中的 value Thread.sleep(5 * 1000); // 暂停5秒 } catch (InterruptedException e) { e.printStackTrace(); } }}
用浏览器或者Postman访问: http://localhost:8081/metric/custom
可以看到写入的数据:
updatePrometheus{id="1001",name="测试更新",} 1.0
标签:


甘肃:“寒凉”持续盘踞 “甘味”农产备受考验

(上海战疫录)专访上海一居民区书记:坚持!背后6000多居民等着我们

西宁公安严厉打击涉疫违法犯罪 依法处理案件72起123人

甘肃渭源:千年渭水文化蕴“写生热” 校地合作塑学生文化涵养

5月16日起 西宁市部分区域有序开放

青海西宁:设置“黄码医院”保障重点人群医疗服务需求
- 03-27环球快播:Prometheus的使用
- 03-27微信发视频视频过大怎么办_微信发视频过大怎么办
- 03-27我国启动紧密型城市医疗集团建设试点 构建城市网格化医疗服务新体系_焦点简讯
- 03-27镇江城建产业集团10亿中期票据即将兑付 利率4.95%_环球观察
- 03-27湖北宜昌:20万尾中华鲟放流长江
- 03-27简讯:印度方面考虑战略储备液化天然气以避免未来供应短缺
- 03-27世界资讯:本轮AI行情最好的标的——同花顺,至少持有至300以上!
- 03-27不锈钢周报:低估值 等待驱动 区间震荡【广发期货研究所】_焦点快播
- 03-27阳历9月25日是什么星座_9月25日是什么星座 天天时快讯
- 03-27开展民间投融资机构涉非涉稳风险排查 焦点精选
- 03-27雍正孙嘉诚简介(孙嘉诚简介)
- 03-27燕水佳园社区开展“小区是我家 携手扮靓它”在职党员进社区种植月季花活动-世界热门
- 03-27剑灵灵剑士卡刀宏设置_剑灵灵剑士
- 03-26消息!花海、篝火、演唱会……他们在汉阴玩嗨了!
- 03-26世界热推荐:国足1比2不敌新西兰,热身赛1平1负未尝胜绩
- 03-26当前聚焦:禾怎么读音 禾的读音
- 03-26当前快报:会计专业怎么考研
- 03-26息县:多措并举扎实做好清明期间安全防范工作
- 03-26环球热头条丨英汉·汉英水污染科学词汇_关于英汉·汉英水污染科学词汇的简介
- 03-26焦点快看:山东赫达:公司纤维素醚产品在俄罗斯有销售
- 03-26坐观垂钓者的下一句-世界球精选
- 03-26弓箭手小生存单人通关_弓箭手小生存_天天快报
- 03-26中晨国际物资储备有限公司_中晨-关注
- 03-25痛经了这么多年,原来是这个病! 每日快报
- 03-25郑州:政务部门应当制定政务数据备份和恢复策略,落实相关灾备措施
- 03-25巴东属于哪个省_天天播资讯
- 03-25集采药供应紧张,备供企业生产的流感药物迅速顶上-速讯
- 03-25造黄谣者食恶果,然后呢?
- 03-25驱蚊草清香木的养殖方法与注意事项_如何养殖清香木 全球速读
- 03-25功成不必在我功成必定有我是啥意思_聚焦