0 Sai lệch: phạm vi phạm vi! = Khoảng hiện tại NoopSpan sau khi nâng cấp sleuth đám mây mùa xuân

câu hỏi được tạo ra tại Wed, May 8, 2019 12:00 AM

Sau khi nâng cấp mùa xuân trên nền tảng đám mây từ 2.0.0 lên 2.1.1, tôi nhận được các thử nghiệm không thành công với thông báo: Sai lệch: phạm vi khoảng cách NoopSpan (dfa5ce53cfd8c8e2 /dfa5ce53cfd8c8e2)

Đây là dấu vết ngăn xếp đầy đủ

java.lang.AssertionError: Misalignment: scoped span NoopSpan(dfa5ce53cfd8c8e2/dfa5ce53cfd8c8e2) !=  current span NoopSpan(dfa5ce53cfd8c8e2/e2c617fa7a71a09f)
    at brave.propagation.ThreadLocalSpan.remove(ThreadLocalSpan.java:141)
    at org.springframework.cloud.sleuth.instrument.messaging.TracingChannelInterceptor.finishSpan(TracingChannelInterceptor.java:374)
    at org.springframework.cloud.sleuth.instrument.messaging.TracingChannelInterceptor.afterSendCompletion(TracingChannelInterceptor.java:244)
    at org.springframework.integration.channel.AbstractMessageChannel$ChannelInterceptorList.afterSendCompletion(AbstractMessageChannel.java:637)
    at org.springframework.integration.channel.AbstractMessageChannel.send(AbstractMessageChannel.java:469)
    at org.springframework.integration.channel.AbstractMessageChannel.send(AbstractMessageChannel.java:401)

Phần thử nghiệm thất bại là

import org.springframework.messaging.SubscribableChannel;

private SubscribableChannel inputChannel;
    @Test
    public void throw_exception_bad_request() {
      inputChannel.send(message);
}

Từ những gì tôi có thể nói vấn đề là sleuth đang tạo ra nhiều nhịp cho cùng một phương thức và sau đó so sánh chúng và điều đó có gây ra xung đột không? Có hai mục nhật ký hiển thị rõ ràng các nhịp khác nhau

{"time":"2019-05-06T18:00:21.663+00:00","sev":"ERROR","app":"app","evt":"dfa5ce53cfd8c8e2:dfa5ce53cfd8c8e2"
{"time":"2019-05-06T18:00:21.668+00:00","sev":"ERROR","app":"app","evt":"dfa5ce53cfd8c8e2:e2c617fa7a71a09f"

Lỗi đang được đăng nhập ở hai vị trí riêng biệt nhưng id của span là riêng biệt. Đây là hai nơi nó đang được đăng nhập.

   return Mono.error(log.throwing(new CustomException(
                                    "Error")));
        try {
            client.createCustomEvent();
        } catch (Exception e) {
            log.error("Error processing", e);

Một lần nữa, điều này chỉ xảy ra với phiên bản sleuth mới hơn, khi tôi hoàn nguyên các bài kiểm tra vượt qua.

    
- 2
0 Câu trả lời                              0                         
nguồn đặt đây