当前位置: 首页 > news >正文

智慧党建门户网站建设方案/免费网站统计

智慧党建门户网站建设方案,免费网站统计,苏州网站设计制作公司,b2b网站推广关注 SpringBoot实战电商项目mall(50kstar)地址:github.com/macrozheng/… 摘要 当面对一个复杂的系统时,我们往往需要监控工具来帮助我们解决一些性能问题。比如之前我们使用SpringBoot Admin来监控应用,从而获取到S…

关注

号称下一代可视化监控系统,结合SpringBoot使用,贼爽!

SpringBoot实战电商项目mall(50k+star)地址:github.com/macrozheng/…

摘要

当面对一个复杂的系统时,我们往往需要监控工具来帮助我们解决一些性能问题。比如之前我们使用SpringBoot Admin来监控应用,从而获取到SpringBoot Actuator暴露的指标信息。今天给大家介绍一个功能强大的监控工具Grafana,只要需要用到监控的地方,用它做可视化就对了!

Grafana简介

Grafana是一款开源的数据可视化和分析工具,不管你的指标信息存储在哪里,你都可以用它来可视化这些数据。同时它还具有告警功能,当指标超出指定范围时会提醒你。

Prometheus简介

Prometheus是一款时序数据库,可以简单理解为带时间的MySQL数据库。由于Grafana只能将数据转换成可视化图表,并没有存储功能,所以我们需要结合Prometheus这类时序数据库一起使用。

安装

使用Docker安装Grafana和Prometheus无疑是最简单的,我们接下来将采用此种方式。

  • 首先下载Grafana的Docker镜像;
docker pull grafana/grafana
复制代码
  • 下载完成后运行Grafana;
docker run -p 3000:3000 --name grafana \
-d grafana/grafana
复制代码
  • 接下来下载Prometheus的Docker镜像;
docker pull prom/prometheus
复制代码
  • /mydata/prometheus/目录下创建Prometheus的配置文件prometheus.yml
global:scrape_interval: 5s
复制代码
  • 运行Prometheus,把宿主机中的配置文件prometheus.yml挂载到容器中去;
docker run -p 9090:9090 --name prometheus \
-v /mydata/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml \
-d prom/prometheus
复制代码
  • 至此安装完成,是不是很简单!可以通过如下地址访问Grafana,登录账号密码为admin:admin,访问地址:http://192.168.5.78:3000/

  • 登录Grafana后显示界面如下;

  • 其实Prometheus也是有可视化界面的,就是有点简陋,访问地址:http://192.168.5.78:9090/

使用

Grafana已经安装完后,是时候来波实践了,接下来我们来介绍下使用Grafana来监控Linux系统和SpringBoot应用。

监控系统信息

使用node_explorer可以暴露Linux系统的指标信息,然后Prometheus就可以通过定时扫描的方式获取并存储指标信息了。

  • 下载node_explorer的安装包,下载地址:prometheus.io/download/#n…

  • 这次我们直接把node_explorer安装到Linux服务器上(如果使用Docker容器安装,监控的会是Docker容器的指标信息),将下载的安装包解压到指定目录,并修改文件夹名称:
cd /mydata
tar -zxvf node_exporter-1.1.2.linux-amd64.tar.gz
mv node_exporter-1.1.2.linux-amd64 node_exporter
复制代码
  • 进入解压目录,使用如下命令运行node_explorer,服务将运行在9100端口上;
cd node_exporter
./node_exporter >log.file 2>&1 &
复制代码
  • 使用curl命令访问获取指标信息接口,获取到信息表示运行成功;
curl http://localhost:9100/metrics
复制代码
# HELP promhttp_metric_handler_requests_in_flight Current number of scrapes being served.
# TYPE promhttp_metric_handler_requests_in_flight gauge
promhttp_metric_handler_requests_in_flight 1
# HELP promhttp_metric_handler_requests_total Total number of scrapes by HTTP status code.
# TYPE promhttp_metric_handler_requests_total counter
promhttp_metric_handler_requests_total{code="200"} 2175
promhttp_metric_handler_requests_total{code="500"} 0
promhttp_metric_handler_requests_total{code="503"} 0
复制代码
  • 接下来修改Prometheus的配置文件prometheus.yml,创建一个任务定时扫描node_explorer暴露的指标信息;
scrape_configs:- job_name: nodestatic_configs:- targets: ['192.168.5.78:9100']
复制代码
  • 重启Prometheus容器,可以通过加号->Dashboard来创建仪表盘;

  • 当然你还可以选择去Grafana的仪表盘市场下载一个Dashboard,市场地址:grafana.com/grafana/das…

  • 这里选择了Node Exporter Full这个仪表盘,记住它的ID,访问地址:grafana.com/grafana/das…

  • 选择导入Dashboard并输入ID,最后点击Load即可;

  • 选择数据源为Prometheus,最后点击Import

  • 导入成功后就可以在Grafana中看到实时监控信息了,是不是够炫酷!

监控SpringBoot应用

监控SpringBoot应用需要依靠actuatormicrometer,通过暴露actuator的端点,Prometheus可以定时获取并存储指标信息。

  • 修改项目的pom.xml文件,添加actuatormicrometer依赖;
<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency><!-- 集成micrometer,将监控数据存储到prometheus --><dependency><groupId>io.micrometer</groupId><artifactId>micrometer-registry-prometheus</artifactId></dependency>
</dependencies>
复制代码
  • 修改应用配置文件application.yml,通过actuator暴露监控端口/actuator/prometheus
management:endpoints:web:exposure:# 暴露端点`/actuator/prometheus`include: 'prometheus'metrics:tags:application: ${spring.application.name}
复制代码
  • 在监控SpringBoot应用之前,我们需要先运行一个SpringBoot应用,使用如下命令运行即可;
docker run -p 8088:8088 --name mall-tiny-grafana \
-v /etc/localtime:/etc/localtime \
-v /mydata/app/mall-tiny-grafana/logs:/var/logs \
-e TZ="Asia/Shanghai" \
-d mall-tiny/mall-tiny-grafana:1.0-SNAPSHOT
复制代码
  • 修改Prometheus的配置文件prometheus.yml,创建一个任务定时扫描actuator暴露的指标信息,这里需要注意下,由于SpringBoot应用运行在Docker容器中,需要使用docker inspect mall-tiny-grafana |grep IPAddress来获取容器IP地址;
scrape_configs:# 采集任务名称- job_name: 'mall-tiny-grafana'# 采集时间间隔scrape_interval: 5s# 采集超时时间scrape_timeout: 10s# 采集数据路径metrics_path: '/actuator/prometheus'# 采集服务的地址static_configs:- targets: ['172.17.0.5:8088']
复制代码
  • 我们可以通过Prometheus的可视化界面,来确定Prometheus是否能获取到指标信息;

  • 同样,我们可以从仪表盘市场导入仪表盘,访问地址:grafana.com/grafana/das…

  • 导入成功后就可以在Grafana中看到SpringBoot实时监控信息了,果然够炫酷!

总结

通过对Grafana的一波实践,我们可以发现,使用Grafana来进行数据可视化的过程是这样的:首先我们得让被监控方将指标信息暴露出来,然后用Prometheus定时获取并存储指标信息,最后将Prometheus配置为Grafana的可视化数据源。

参考资料

  • Grafana官方文档:grafana.com/docs/grafan…
  • node-exporter的使用:prometheus.io/docs/guides…

项目源码地址

github.com/macrozheng/…

本文 GitHub github.com/macrozheng/… 已经收录,欢迎大家Star!

http://www.lbrq.cn/news/1427005.html

相关文章:

  • 网站开发前台/新媒体运营怎么自学
  • qq小程序在哪里打开/厦门seo测试
  • 江苏专业网站建设费用/武汉seo软件
  • 哪个网站的ps元素好/网络营销案例分析
  • 绥化市住房和城乡建设网网站/沈阳百度推广哪家好
  • 外贸工厂 网站建设/网页设计与网站建设教程
  • 外贸网站排行榜前十名/企业推广方案
  • 自己的网站怎样做优化/中国域名注册官网
  • 贵阳网站设计与开发怎么做/如何优化网页
  • 如何入驻亚马逊跨境电商/广州seo托管
  • 浙江省建设监理协会官方网站/网络热词缩写
  • 手机网站设计公/考拉seo
  • 免费网站模板源码下载/网站制作优化排名
  • 上线了建的网站免费吗/b2b是什么意思
  • 做语文综合题的网站/江苏seo网络
  • 沈阳php网站/长春网长春关键词排名站设计
  • 区块链做网站都有哪些内容呢/网站推广怎么做才有效果
  • 做网站的公司好坑啊/百度手机助手下载苹果版
  • 辽宁手机版建站系统信息/抖音seo优化排名
  • 网站建设外包需要注意哪些/电脑培训学校排名
  • 邢台网站定制/专业的seo外包公司
  • 怎么把网站制作成app/西安网络推广公司网络推广
  • zencart网站时间问题/如何做网页链接
  • 做网站如何突出网站特色/网站安全
  • 免费建自己域名的网站吗/免费引流app下载
  • 网站上的聊天框怎么做的/口碑营销经典案例
  • 小榄网站建设/nba最新排名公布
  • 做的网站在不同浏览器/网络推广平台大全
  • php网站插件删除或添加/天津百度网站快速排名
  • wordpress添加顶级菜单/2022最好的百度seo
  • 小白挑战一周上架元服务——装饰器
  • es7.x中分片和节点关系以及查看节点数
  • Python基础(Flask①)
  • dkms安装nvidia驱动和多内核支持
  • 【完整源码+数据集+部署教程】肾脏病变实例分割系统源码和数据集:改进yolo11-CARAFE
  • 希尔排序专栏