Spring Boot Admin实践

Spring Boot Admin 用于监控基于 Spring Boot 的应用,包括Server和Client。Client 把自身的信息“注册”到 Server,然后就能在 Server 上看到“注册”的 Spring Boot 应用的状态信息了。

【不引入spring-cloud的情况】

1. Server 端

1) pom.xml中引入

de.codecentricspring-boot-admin-serverde.codecentricspring-boot-admin-server-ui

2)主类开启监控:@EnableAdminServer,@Configuration,@EnableAutoConfiguration

2. Client 端

1)pom.xml中引入

de.codecentricspring-boot-admin-starter-client

2)properties配置文件中指定Server注册地址,如 spring.boot.admin.url=http://localhost:8080

注意:client端注册上去之后,默认只显示detail,trace,heapdump,若需要查看Metrics,Enviroment,Threads,JMX,Logging等,需引入 spring-boot-starter-actuator ,并配置endpoints.sensitive: false

3.Server 端监控自己

若Server 端需要监控自己,把 Server 端也当作是 Client 一样来配置就可以实现了:参考第2点

【引入spring-cloud的情况】

Spring Boot Admin 注册到Eureka Server 中后,可以管理所有注册到 Eureka Server 的应用,包括 Spring Boot Admin 自己(因为自己也会注册到 Eureka Server)

1. Server 端

1)pom.xml中引入

org.springframework.cloudspring-cloud-starter-eureka

de.codecentricspring-boot-admin-serverde.codecentricspring-boot-admin-server-ui

2)主类开启监控:@EnableEurekaClient,@EnableAdminServer

3)properties中配置 eureka.instance.client.serviceUrl.defaultZone

2. Client 端

只需要注册到Eureka Server 即可,无需做其他配置,若配置了 spring.boot.admin.url ,那么会在监控主页显示2个重复的client端。

1)客户端要添加 spring-boot-starter-actuator 依赖,因为获取应用信息是通过 actuator 中的相关 endpoints 获取的。

2)JMX-bean管理 和 Loglevel 管理 参考下面

【动态修改环境变量值】

1. 打开Server端的URL,如http://localhost:60003/

2. 在Environment manager中可以指定property-name,修改property-value,然后update environment。可修改多个

3. 修改后的值在 PropertySource manager 中会显示,在/env端点中也会显示。在@ConfigurationProperties绑定的类中的值会更新。此操作可用来动态更新业务配置

4. 点击 Reset environment,修改的所有值会还原。@ConfigurationProperties绑定的类中的值也还原

5. 进程重启后,所有环境变量值按初始化值

【Spring Boot Admin Server 配置说明】

spring.boot.admin.context-path Admin Server 保留的静态访问和API的前缀(当你在业务应用中使用而不是单独使用时就很有必要了)

spring.boot.admin.monitor.period 默认10.000,更新应用信息的频率,单位毫秒

spring.boot.admin.monitor.status-lifetime 默认10.000 被监控的应用信息的过期时间,单位毫秒

【Spring Boot Admin Client 配置说明】

Spring Boot Admin Client 注册到 Spring Boot Admin Server,Client 定期地发送 Http Post 到 admin 提供自己的应用信息。如果需要管理 loglevels 或 JMX-beans ,则要在依赖中添加 Jolokia ,使得 JMX-beans 也可以通过 http 访问。

spring.boot.admin.client.enabled 默认true 默认开启

spring.boot.admin.url admin server 的地址列表,此设置会触发自动配置,必须

spring.boot.admin.api-path 注册到 admin server 端点的 Http-path

spring.boot.admin.username  注册到 admin server 的账号

spring.boot.admin.password 注册到 admin server 的密码

spring.boot.admin.period 默认10.000 重试注册的间隔时间

spring.boot.admin.auto-registration 默认true 应用启动后自动执行周期性的注册任务

spring.boot.admin.auto-deregistration 默认false 当应用关闭时,自动取消注册

spring.boot.admin.client.health-url

spring.boot.admin.client.management-url

spring.boot.admin.client.service-url

spring.boot.admin.client.name 注册时的名字

spring.boot.admin.client.prefer-ip 默认false

【其他配置】

1. 在spring boot admin中的info中显示的内容需在server或client中配置info,如:

#Info配置

info.aaa.description: Eureka

info.aaa.url: https://github.com/jixuju/spring-cloud-test

info.aaa.build-by: superwind20

2. 在spring boot admin中的turbine中显示的hystrix信息,需在server中配置turbine,如:

#turbine配置

spring.boot.admin.turbine.url: http://localhost:60002/turbine.stream

spring.boot.admin.turbine.clusters: PROVIDER-SERVICE,RIBBON-SERVICE,FEIGN-SERVICE

3. JMX-bean管理(若需要管理JMX,则要配置)

JMX-bean 管理需要使用第三方的 jolokia ,因为 spring-boot-admin-starter-client 会自动依赖 jolokia-core,所以这里不需要显示依赖了,下面的基于 Eureka 注册发现的配置中,由于没有配置spring-boot-admin-starter-client ,就需要显示地依赖:

pom.xml

org.jolokia

jolokia-core

4. Loglevel 管理(若需要管理Logging日志,则要配置)

当前日志级别管理仅限 Logback,通过 JMX 实现,所以需要依赖 jolokia 。同时,还需要配置 Logback 的 JMXConfigurator:

logback.xml

这个 logback.xml 放在与 application.properties 同级的目录就可以了,如果不配置 Logback,那么 Spring Boot Admin 就无法管理应用的日志级别。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,132评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,802评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,566评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,858评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,867评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,695评论 1 282
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,064评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,705评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,915评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,677评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,796评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,432评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,041评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,992评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,223评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,185评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,535评论 2 343

推荐阅读更多精彩内容