当前位置: 首页 > 知识库问答 >
问题:

带有Spring Boot 2.2和Hoxton云的Zipkin

骆利
2023-03-14

我想将我的项目Zipkin设置更新到Spring Boot 2.2.2。释放和Spring云霍克斯顿。但看起来简单的jars更新是不够的。

我认为旧的设置(它适用于Spring Boot 2.1.5. RELEASE和Greenwich. SR2)也适用于Boot 2.2.2. RELEASE和Hoxton. RELEASE,但似乎我仍然错过了一些东西。

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

    <properties>
        ...
        <spring-cloud.version>Hoxton.RELEASE</spring-cloud.version>
<!--        <zipkin.version>2.12.9</zipkin.version> does not work either-->
        <zipkin.version>2.11.8</zipkin.version>
        ...  
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-zipkin</artifactId>
        </dependency>
        <dependency>
            <groupId>io.zipkin.java</groupId>
            <artifactId>zipkin-server</artifactId>
            <version>${zipkin.version}</version>
        </dependency>
        <dependency>
            <groupId>io.zipkin.java</groupId>
            <artifactId>zipkin-autoconfigure-ui</artifactId>
            <version>${zipkin.version}</version>
            <scope>runtime</scope>
        </dependency>
        ...
    </dependencies>

我得到以下异常(java.lang.NoClassDefFoundError: zipkin2 /internal/Buffer$Writer):

Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'webMvcMetricsFilter' defined in class path resource [org/springframework/boot/actuate/autoconfigure/metrics/web/servlet/We
bMvcMetricsAutoConfiguration.class]: Unsatisfied dependency expressed through method 'webMvcMetricsFilter' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'pr
ometheusMeterRegistry' defined in class path resource [org/springframework/boot/actuate/autoconfigure/metrics/export/prometheus/PrometheusMetricsExportAutoConfiguration.class]: Initialization of bean failed; nested exception is or
g.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'zipkin2.server.internal.ZipkinServerConfiguration': Unsatisfied dependency expressed through field 'httpQuery'; nested exception is org
.springframework.beans.factory.BeanCreationException: Error creating bean with name 'zipkin2.server.internal.ZipkinQueryApiV2': Bean instantiation via constructor failed; nested exception is java.lang.NoClassDefFoundError: zipkin2
/internal/Buffer$Writer

共有1个答案

章高朗
2023-03-14

这是一个版本问题。Zipkin正式建议在spring-boot 2. x之后使用zipkin-serverinstate客户服务器。

对我来说,库在spring boot 2.1.8下运行良好。使用spring cloud Greenwich释放。SR6

 类似资料:
  • 当工作从Spring Boot 2.1更新我的应用程序时。X到2.3。X和Spring Cloud Streams(kafka流版本)从2.1.2到3.0.8(Fishtown到Hoxton)我遇到了以下情况: 虽然正在删除组件扫描(…) 我在核心应用程序上消除了上述问题,这导致了“缺少bean!”问题,因为我不再包括来自公共包的bean。 导致此错误的原因是什么?我该如何修复它?

  • Spring Boot 2.3的计划EOL是什么时候。X和Spring Cloud Hoxton。SR6? 我找到了2个链接: https://spring.io/projects/spring-cloud: Spring Cloud Dalston、Edgware、Finchley和Greenwich都已达到生命终结状态,不再受支持。 2018年6月,Spring Cloud Hoxton Fi

  • 我正在使用Spring Cloud Stream和RabbitMq在不同的微服务之间交换消息。 这是我发布消息的设置。 . 以及接收消息的设置 . 我能够成功地使用此设置交换消息。我希望,发送消息和接收消息的ID是相等的。但它们总是不同的UUID。 有没有一种方法可以让消息从生产者通过RabbitMq一直保持相同的ID到消费者?

  • 考虑这个使用Spring Boot 2.1.2和Spring Cloud Greenwich.release的基于微服务的应用程序: 每个微服务使用JSESSIONID cookie来标识自己的专用Servlet会话(即没有与Spring session和Redis共享的全局唯一会话)。 外部传入请求由Spring Cloud Gateway路由(以及通过Spring Cloud Netflix使

  • 我正在从Firebase实时数据库切换到云Firestore。我的数据库包含拥有存储的用户,每个存储都包含盒子。每个用户都可以拥有多个包含盒子的存储器。每个存储可以包含几个盒子。每个箱子只能放在一个仓库里。 在我应用程序的主视图中,对于该特定用户,我需要列出所有存储以及每个存储中的框,如下所示: 然后,用户应该能够点击每个框以查看内容和更多信息。 在Firebase实时数据库中,每个用户只需一个请

  • 我试图使用使用私钥的方法(它有密码并从文件添加到ssh-agent)(根据这个堆栈帖子): 但我一直得到 组织。日食jgit。应用程序编程接口。错误。运输例外:git@github.com:myorg/myrepo。git:USERAUTH失败 我是否必须完全按照doc所说的那样将密钥粘贴到配置文件中,还是可以以某种方式指向密钥文件? 编辑 实际上,Spring根本不需要或忽略