Dubbo工具——dubbo-monitor监控平台的发布和使用

1)下载

https://github.com/alibaba/dubbo/archive/dubbo-2.5.8.zip

2)编译

cmd中进入解压后的目录,然后运行mvn install。然后到E:\incubator-dubbo-dubbo-2.5.8\dubbo-simple\dubbo-monitor-simple\target目录下复制出dubbo-monitor-simple-2.5.8-assembly.tar.gz到e:/,然后解压该文件,得到如下目录:
file

bin目录存放启动、关闭等命令。

conf配置文件。

lib依赖包。

  1. 配置

1)dubbo-monitor端配置
file

2)provider端配置

1) consumer端配置

这样,在 provider、consumer运行的时候,通过该标签,会到注册中心找到dubbo-monitor这个服务。

4)启动dubbo-monitor之前dubbo-admin中的服务列表
file

file

  1. 运行测试

1)启动和关闭

到dubbo-monitor-home/bin,运行start.cmd即可启动成功,并且看到了logs目录。然后到dubbo-admin下再次查看服务列表,比刚才多了一个服务,如图:

file

2)执行原理分析

参见dubbo结构图,dubbo-monitor启动后,原来的provider和consumer相对于monitor来说,都变成了消费者。因为他们都调用了MonitorService接口服务,每分钟调用一次,将这一分钟内产生的数据发送给monitor。启动程序并调用后这时显示MonitorServie服务为正常。
file

3)访问dubbo-monitor

http://localhost:8081

主要熟悉统计图页面。

4.备注

1)配置的注册中心要和被统计的provider/consumer是同一个注册中心

2)monitor和dubbo-admin一样,宕机不影响业务系统的运行,建议正式环境跟业务系统分开运行,因为其中一个系统配置出错会影响另外一个系统的启动。

3)如果provider、consumer、dubbo-monitor不在同一台机器,dubbo-monitor配置中的7070端口需要开启。

4)monitor宕机后,provider和consumer这两个服务仍然在每隔一分钟发送一次消息,导致后台报异常,虽然没有影响业务运行,如何在monitor宕机后自动不发统计信息?重启consumer即可,不必注销。

5.作业错误

1)部署dubbo-monitor到ecs,启动时一直如下所示:
file

原因:

a. dubbo-monitor的dubbo.properties配置了jetty端口为8081,结果跟tomcat集群中的端口冲突了;

b. 修改start.sh中的以下内容,因为我们的ECS都是1G内存的

file

file

c. 有其他方面的冲突,检查其他应用的端口等是否有冲突,例如tomcat本身就占N个端口。从这里也可以看出,在正是环境中,一定要分开机器运行这些服务。

2)dubbo-monitor中的统计图无法显示,显示的都是小叉,但是目录下有png图片

file

file

修改dubbo-monitor/conf/dubbo.properties中的内容,如上图所示,必须保证charts和statistics目录在monitor下面。

3)无法生成png图片

目录用的是绝对路径,配置也正确,但是无法生成png图片,可能的原因有:

a. 看看你的配置文件项dubbo.jetty.directory这个文件夹到底存不存在,默认不会自动给你创建的;

b. 确保生产者/消费者中的spring.xml有;

c. 如果以上2点确保正确,还是出现问题,建议改回之前的${user.home}配置方式,使用默认的${user.home}配置方式会在bin目录中生成统计图。

(下期见)

file

获取更多资源请关注微信公众号:AKA程序王

版权声明:本文为akachengxuwang原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/akachengxuwang/p/11722680.html