zoukankan      html  css  js  c++  java
  • springcloudsleuth+zipkin追踪服务

    1, 父Maven pom 文件

     <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.7.RELEASE</version>
    </parent>

    <dependencies>
    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <!-- 解决 JDK 9 以上没有 JAXB API 的问题 -->
    <!-- <dependency>-->
    <!-- <groupId>javax.xml.bind</groupId>-->
    <!-- <artifactId>jaxb-api</artifactId>-->
    <!-- <version>2.3.0</version>-->
    <!-- </dependency>-->

    <!-- <dependency>-->
    <!-- <groupId>com.sun.xml.bind</groupId>-->
    <!-- <artifactId>jaxb-impl</artifactId>-->
    <!-- <version>2.3.0</version>-->
    <!-- </dependency>-->

    <!-- <dependency>-->
    <!-- <groupId>com.sun.xml.bind</groupId>-->
    <!-- <artifactId>jaxb-core</artifactId>-->
    <!-- <version>2.3.0</version>-->
    <!-- </dependency>-->

    <!-- <dependency>-->
    <!-- <groupId>javax.activation</groupId>-->
    <!-- <artifactId>activation</artifactId>-->
    <!-- <version>1.1.1</version>-->
    <!-- </dependency>-->
    </dependencies>

    <dependencyManagement>
    <dependencies>
    <dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-dependencies</artifactId>
    <version>Finchley.SR2</version>
    <type>pom</type>
    <scope>import</scope>
    </dependency>
    </dependencies>
    </dependencyManagement>

    2, Slueth Server 服务器
    pom 文件
    <dependencies>
    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
    <groupId>io.zipkin.java</groupId>
    <artifactId>zipkin-server</artifactId>
    <version>2.9.4</version>
    </dependency>
    <dependency>
    <groupId>io.zipkin.java</groupId>
    <artifactId>zipkin-autoconfigure-ui</artifactId>
    <version>2.9.4</version>
    </dependency>
    </dependencies>


    yml 文件
    server:
    port: 9090

    启动类
    @SpringBootApplication
    @EnableZipkinServer
    public class ZipKinServer {
    public static void main(String[] args) {
    SpringApplication.run(ZipKinServer.class,args);
    }
    }
    -------------------------------------------------

    zipkinclient 模块代码
    @RestController
    @RequestMapping("/zipkin")
    public class ZipkinHandler {
    @Value("${server.port}")
    private String port;

    @GetMapping("/index")
    public String index(){
    return this.port;
    }
    @RequestMapping("/get")
    public String addItem( @RequestParam("desc") String desc){
    return "this is zipkin client"+desc;
    }
    @RequestMapping("/geterro")
    public String addI( @RequestParam("desc") String desc){
    int m=0;
    int n=100/m;
    return "this is zipkin client error"+desc;
    }
    }

    3, slueth client

    pom 文件
    <dependencies>
    <dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-zipkin</artifactId>
    <version>2.0.2.RELEASE</version>
    </dependency>
    <dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
    <version>2.0.2.RELEASE</version>
    </dependency>
    <dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
    <version>2.0.2.RELEASE</version>
    </dependency>
    </dependencies>


    yml 文件

    server:
    port: 8010
    spring:
    application:
    name: common
    sleuth:
    web:
    client:
    enabled: true
    sampler:
    probability: 1.0
    zipkin:
    base-url: http://localhost:9090/
    eureka:
    client:
    service-url:
    defaultZone: http://localhost:8761/eureka/

    启动文件
    @EnableFeignClients
    @EnableEurekaClient
    @SpringBootApplication
    public class CommonApp {
    public static void main(String[] args) {
    SpringApplication.run(CommonApp.class,args);
    }

    }
    ----------------------------------------------
    @FeignClient(value = "zipkinclient")
    public interface FeignInterface {
    @GetMapping("/zipkin/get")
    public String addItem( @RequestParam("desc") String desc);

    @GetMapping("/zipkin/geterro")
    public String addI( @RequestParam("desc") String desc);
    }

    --------------------------------------------------------------

    @RestController
    public class HelloController {

    @RequestMapping("/hello")
    public String getHello()
    {
    return "this is hello world";
    }
    @Autowired
    FeignInterface feign;
    @RequestMapping("/get")
    public String get()
    {
    return feign.addItem("this is feign get");
    }
    @RequestMapping("/mm")
    public String mm()
    {
    return feign.addI("this is feign mmmm");
    }
    }




  • 相关阅读:
    Sublime2 Text编辑器使用技巧
    PHP实现一个简单url路由功能
    jQuery extend函数详解
    Memcached常用命令及使用说明
    根据一张表去更新另一张表
    npm ERR! Error: socket hang up
    Oracle中group by 1,order by 1的理解
    Oracle中的next_day(date,char)函数的理解
    WebService入门
    OCupload、POI、PinYin4j的简单入门
  • 原文地址:https://www.cnblogs.com/bruce1992/p/13876603.html
Copyright © 2011-2022 走看看