Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: Zipkin json binaryAnnotation value : cannot unmarshall #5434

Closed
tarunkalra7 opened this issue May 9, 2024 · 3 comments
Closed

[Bug]: Zipkin json binaryAnnotation value : cannot unmarshall #5434

tarunkalra7 opened this issue May 9, 2024 · 3 comments
Labels

Comments

@tarunkalra7
Copy link

tarunkalra7 commented May 9, 2024

What happened?

While posting the zipkin json to the collector, it runs into error with this output of failing to deserialize with this : cannot unmarshal bool into Go struct field binaryAnnotation.binaryAnnotations.value of type string

Steps to reproduce

[
{
    "traceId": "7d3277b087a7c05a",
    "name": "example",
    "id": "3c1813d224db60fe",
    "parentId": "a50ac2ce7f3bf056",
    "timestamp": 1508924339988597,
    "duration": 1781,
    "annotations": [],
    "binaryAnnotations": [
      {
        "key": "service",
        "value":  true
      }
    ]
  }
]

The following json fails to deserialize with this error : cannot unmarshal bool into Go struct field binaryAnnotation.binaryAnnotations.value of type string

With the latest version of jaeger, we are running into this error. It was working with Jaeger v1.51.0

Expected behavior

The deserialization should be done without error.

Relevant log output

json: cannot unmarshal bool into Go struct field binaryAnnotation.binaryAnnotations.value of type string

Screenshot

No response

Additional context

No response

Jaeger backend version

v1.56.0

SDK

No response

Pipeline

No response

Stogage backend

No response

Operating system

Linux

Deployment model

docker

Deployment configs

No response

@tarunkalra7 tarunkalra7 added the bug label May 9, 2024
@tarunkalra7 tarunkalra7 changed the title [Bug]: cannot unmarshal bool into Go struct field binaryAnnotation.binaryAnnotations.value of type string [Bug]: Zipkin json binaryAnnotation value : cannot unmarshall May 9, 2024
@yurishkuro
Copy link
Member

Which port are you sending this to? Which http headers are sent?

@tarunkalra7
Copy link
Author

@yurishkuro I am using 9411 port, and I have used this command to check the same with the output. Please find the same
bash-4.4$ curl -X POST -H "Content-Type: application/json" -d '[{"traceId":"7d3277b087a7c05a","name":"example","id":"3c1813d224db60fe","parentId":"a50ac2ce7f3bf056","timestamp":1508924339988597,"duration":1781,"annotations":[],"binaryAnnotations":[{"key":"service","value":true}]}]' http://localhost:9411/api/v1/spans

This was the response that I got :
zipkinv1: json: cannot unmarshal bool into Go struct field binaryAnnotation.binaryAnnotations.value of type string

@yurishkuro
Copy link
Member

yurishkuro commented May 9, 2024

You are using the old Zipkin JSON format, in v2 I don't think they have "binary annotations" anymore.

In v1.53 we removed Jaeger's internal implementation of Zipkin endpoint and started using one from OTEL (#5045). The tests there showed that both v1 and v2 formats were still accepted, but perhaps we don't have full coverage (for bool attr).

In any case, this is not something we can fix in Jaeger anymore. If it's a bug in the OTEL receiver it needs to be fixed there.

@yurishkuro yurishkuro reopened this May 16, 2024
@yurishkuro yurishkuro closed this as not planned Won't fix, can't repro, duplicate, stale May 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants