⑧SpringCloud 实战:引入 Actuator监控+整合监控页面 (2)

端点访问配置

@Configuration(proxyBeanMethods = false) public class ActuatorSecurity extends WebSecurityConfigurerAdapter{ @Override protected void configure(HttpSecurity http) throws Exception { // 确保所有端点都具有ENDPOINT_ADMIN角色 http.requestMatcher(EndpointRequest.toAnyEndpoint()).authorizeRequests((requests) -> requests.anyRequest().hasRole("ENDPOINT_ADMIN")); http.httpBasic(); } }

整合监控页面

基于 Prometheus 和 Dashboard(如Grafana)进行监控数据可视化展示。

项目引入Prometheus

Prometheus 是一个通过从监控目标上采集 HTTP 数据收集指标数据的监控平台,用户可以非常方便的安装和使用Prometheus并且能够非常方便的对其进行扩展。

引入Prometheus依赖

由于我们使用springboot的是2.X,其中已经包含了io.micrometer相关的包,不需要再次引入,如果使用的springboot版本是1.X,需要自己额外引入。

<dependency> <groupId>io.micrometer</groupId> <artifactId>micrometer-core</artifactId> <version>${micrometer.version}</version> </dependency>

引入micrometer-registry-prometheus包,提供了基于actuator的端点,访问路径是**/prometheus

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

开放所有端点,或者至少/metrics端点

management.endpoint.metrics.enabled=true

然后访问:8181/jinglingwang/prometheus,即可看到相关数据

⑧SpringCloud 实战:引入 Actuator监控+整合监控页面

安装Prometheus

下载Prometheus:https://prometheus.io/download/
我本地环境是Win10

直接解压到自定义目录

修改prometheus.yml
需要配置scrape_configs这个节点

scrape_configs: # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config. - job_name: 'jinglingwang' metrics_path: /actuator/prometheus # metrics_path defaults to '/metrics' # scheme defaults to 'http'. static_configs: - targets: ['localhost:8181']

我这个项目的端口是8181,所以targets需要注意一下,以及获取数据的访问路径是/jinglingwang/prometheus。

启动Prometheus
Win10 直接运行prometheus.exe就可以了,默认端口是9090.

访问控制台页面: :9090/classic/targets;

接入Grafana

Grafana是一个开源的指标量监测和可视化工具。常用于展示基础设施的时序数据和应用程序运行分析。Grafana的dashboard展示非常炫酷,绝对是运维提升逼格的一大利器。

Grafana只是一个dashboard(4版本开始将引入报警功能),负责把数据库中的数据进行可视化展示,本身并不存储任何数据。Grafana目前支持的时序数据库有: Graphite, Prometheus, Elasticsearch, InfluxDB, OpenTSDB, AWS Cloudwatch。

Grafana的套路基本上跟kibana差不多,都是根据查询条件设置聚合规则,在合适的图表上进行展示,多个图表共同组建成一个dashboard,熟悉kibana的用户应该可以非常容易上手。

官方在线演示Demo:

安装

下载页面:https://grafana.com/grafana/download

Grafana Window 安装非常简单,解压后直接运行bin目录下的grafana-server.exe就可以了,默认启动端口是3030,初始登录帐号密码是admin/admin。

添加数据源

在左边导航Configuration,点击data source 添加一个新的数据源,这里我选择的是Prometheus。

Name 填写prometheus.yml里面配置的job_name,如果填写不一致会出现Grafana访问没有数据的问题。

URL填写启动Prometheus时的服务地址:9090/,配置图如下:

⑧SpringCloud 实战:引入 Actuator监控+整合监控页面

然后点击下面的Save & Test 保存测试通过即可。

配置阿里的SLS JVM监控大盘

访问https://grafana.com/grafana/dashboards/12856页面可以查看到阿里的SLS JVM监控大盘

⑧SpringCloud 实战:引入 Actuator监控+整合监控页面

然后点击Grafana 左边的➕,再点击import,输入Id:12856,点击Load即可,然后选择Prometheus的数据源,最后点击Import完成导致模板。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wsszps.html