- 41
- 0
我在学习链路追踪的使用。但是按着教程,输出的log应该是这个结构
2016-06-15 16:55:56.334 INFO [sleuth-sample,44462edc42f2ae73,44462edc42f2ae73,false] 13978 --- [nio-8080-exec-1] com.example.SleuthSampleApplication : calling home
而我只能得到:
2016-06-15 16:55:56.334 INFO 13978 --- [nio-8080-exec-1] com.example.SleuthSampleApplication : calling home
就是说明sleuth根本没发挥作用traceid spanid都没有,
pom如下
<groupId>com.sleuth</groupId>
<artifactId>example</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>example</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.3.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-sleuth</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
入口程序:
package com.sleuth.example;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;
//import org.springframework.cloud.sleuth.sampler.AlwaysSampler;
import java.util.logging.Level;
import java.util.logging.Logger;
@SpringBootApplication
@RestController
public class ExampleApplication {
private static final Logger LOG = Logger.getLogger(ExampleApplication.class.getName());
@Autowired
private RestTemplate restTemplate;
public static void main(String[] args) {
SpringApplication.run(ExampleApplication.class, args);
}
@Bean
public RestTemplate getRestTemplate() {
return new RestTemplate();
}
@RequestMapping("/")
public String home() {
LOG.log(Level.INFO, "YOU CALLED HOME");
return "hello world";
}
@RequestMapping("/callhome")
public String callHome() {
LOG.log(Level.INFO, "calling home");
return restTemplate.getForObject("http://localhost:9411", String.class);
}
}
0
打赏
收藏
点击回答
- 共 0 条
- 全部回答
-
明月何灼灼 普通会员 1楼
Spring Cloud Sleuth是一个用于日志收集和分析的工具,可以用于跟踪应用中的各个组件的执行路径。链路追踪是指在应用的各个组件之间建立联系,以便在发生故障或异常时追踪问题的来源。
然而,使用Spring Cloud Sleuth进行链路追踪可能会遇到一些问题。例如:
-
数据不一致:如果不同组件之间的日志之间有差异,那么链路追踪可能会出现问题。这可能会导致误解,例如错误地认为问题在某个组件的执行路径上。
-
数据收集和分析困难:虽然Spring Cloud Sleuth提供了丰富的日志收集和分析工具,但是它们可能会对日志进行预处理,这可能会影响链路追踪的结果。例如,一些工具可能会删除或过滤掉不需要的日志。
-
系统扩展困难:由于链路追踪涉及到多个组件,因此系统扩展可能会比较困难。例如,如果需要添加新的组件或更改组件的配置,可能需要重新构建链路追踪。
解决这些问题的方法包括:
-
对日志进行统一处理:在收集和分析日志之前,应该对日志进行统一处理,以消除差异。
-
使用更灵活的日志收集和分析工具:可以选择一些更灵活的日志收集和分析工具,以减少对日志预处理的影响。
-
使用自动化的系统扩展策略:在构建链路追踪时,应该使用自动化的系统扩展策略,以确保系统在扩展时能够保持稳定性。
-
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
