码迷,mamicode.com
首页 > 其他好文 > 详细

在dubbo工程中,使用druid监控

时间:2017-09-16 11:45:45      阅读:2753      评论:0      收藏:0      [点我收藏+]

标签:工程   dubbo   监控   

介绍:在dubbo项目中,使用druid的监控功能


问题:因为,在网上找勒,很多的资料,显示的都是需要在web.xml中配置

<servlet>
      <servlet-name>DruidStatView</servlet-name>
      <servlet-class>com.alibaba.druid.support.http.StatViewServlet</servlet-class>
  </servlet>
  <servlet-mapping>
      <servlet-name>DruidStatView</servlet-name>
      <url-pattern>/druid/*</url-pattern>
  </servlet-mapping>

    可是,我们一般搭建的dubbo项目,使用的shell脚本启动的,java命令启动,没有使用到Tomcat容器,虽然可以使用,

    但是会显得,很浪费


解决:

    其实,思路是借鉴,dubbo-monitor-simple 工程的思路,在dubbo的启动项目中,启动jetty容器,去监控,这个监控

这个容器也不是很大,所以不会有多少性能的损失。

    下面贴出代码,以及遇到的问题,贴出的为主要代码,是在大家已有的dubbo项目上添加即可


pom.xml

<dependency>
    <groupId>org.mortbay.jetty</groupId>
    <artifactId>jetty</artifactId>
    <version>6.1.26</version>
</dependency>

    描述: dubbo启动jetty依赖的jar


/src/main/resources/META-INF/dubbo/com.alibaba.dubbo.container.Container

myjetty=com.xxxx.insurance.service.demo.common.container.JettyContainer

技术分享

技术分享


/src/main/java/com/xxxx/insurance/service/demo/common/container/JettyContainer.java

        // 日志监控系统的
        handler.addServletWithMapping(StatViewServlet.class, "/druid/*");

技术分享

描述:直接copy,dubbo的JettyContainer.java过来,修改就可以啦



启动代码

 public static void main(String[] args) {
        args = new String[]{"spring","myjetty"};
        com.alibaba.dubbo.container.Main.main(args);
    }

技术分享


脚本启动

conf/ dubbo.properties

dubbo.container=spring,myjetty
dubbo.log4j.file=logs/dubbo-demo-provider.logdubbo.log4j.level=WARN

技术分享



最后,启动,访问

http://localhost:8080/druid/index.html

技术分享


本文出自 “小新的梦” 博客,请务必保留此出处http://liuzedong.blog.51cto.com/8906170/1965697

在dubbo工程中,使用druid监控

标签:工程   dubbo   监控   

原文地址:http://liuzedong.blog.51cto.com/8906170/1965697

(0)
(1)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!