Where communities thrive

  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
Repo info
  • Jun 24 19:16
    gdimitrov7 commented #3461
  • Jun 23 10:08
    qzmer1104 commented #3342
  • Jun 23 10:06
    qzmer1104 commented #3342
  • Jun 23 05:08
    jcchavezs commented #1334
  • Jun 22 21:24
    frosiere commented #1334
  • Jun 22 21:21
    frosiere commented #1334
  • Jun 21 17:15
    gdimitrov7 opened #3461
  • Jun 21 17:06
    gdimitrov7 closed #3459
  • Jun 21 11:39
    basvanbeek closed #192
  • Jun 21 11:39
    basvanbeek edited #192
  • Jun 21 11:39
    frosiere edited #1334
  • Jun 21 11:37
    frosiere edited #1334
  • Jun 21 11:34
    frosiere edited #1334
  • Jun 21 11:33
    frosiere edited #1334
  • Jun 21 11:32
    frosiere edited #1334
  • Jun 21 11:29
    frosiere commented #1334
  • Jun 21 11:28
    frosiere opened #1334
  • Jun 21 11:28
    frosiere labeled #1334
  • Jun 21 08:59
    gdimitrov7 commented #3459
  • Jun 21 06:06
    codefromthecrypt commented #3460
Bas van Beek
root span comes without parentId as it has no parent
that's the start of your trace
Ben Iofel
good to know
Bas van Beek
so do you have another service where the request originates that starts the trace?
it might not be sending its span data to Zipkin which would account for it missing
Why it doesn't send typically is because one of the following reasons:
Ben Iofel
Bas van Beek
  1. it's reporter (to send to Zipkin) is not configured properly
2 it never closed the span (probably a bug)
Ben Iofel
the request originates in a previous service that isn't reporting to zipkin
Bas van Beek
tada :)
Ben Iofel
Shouldn't the second SERVER span be a child of the CLIENT span that represents that inter-service call?
Bas van Beek
so you probably are missing 3 spans...
1 SERVER span (the root)
2 CLIENT spans (for each of those SERVER spans you do have)
as I vaguely remember both server spans had different parent id's
Ben Iofel
yeah, I understand that the missing root is incorrect here, but I'm wondering if all of the SERVER spans are supposed to be children of the root, instead of SERVER -> CLIENT -> SERVER
SERVER -> CLIENT -> SERVER seems right to me, but you are suggesting that it is ROOT -> CHILDx2 -> SERVERx2
Bas van Beek
They are not in the scenario I described
Let’s say service a gets a request and based on it needs to call service b and service c
The incoming originating request is a missing server span and is also the root spa
The two outgoing calls to downstream services are two client spans both having the root span as their parent
Both client spans would connect to your existing server spans which are missing their upstream data at the moment
Ben Iofel
In my scenario, service A calls service B, which calls service C. I'm missing the spans from A, but I would have expected that C's parentId is a part of B. Instead I'm seeing B & C have different, unknown parentIds, so zipkin only renders B.
7 replies
@basvanbeek i use brave-instrument-grpc in pom,and this is my grpc configure.
Adrian Cole
thanks for helping with support @basvanbeek! I will be out again today, so appreciate your helping others
Arun Gopalpuri
Has anyone done event driven micro services system tracing? We have async services (http with kafka) so how does propagation work in this case?
17 replies
hi someone can help me with this problem with dependencies pods on zipkin?
Unable to load JDK7 types (java.nio.file.Path): no Java7 type support added
Exception in thread "main" java.io.IOException: Failed to open native connection to Cassandra at {cassandra:9042} :: Can't find class DropwizardMetricsFactory (specified by advanced.metrics.factory.class)
2 replies
This is empty. Do I have any configuration
This is empty. Do I have any configuration
10 replies
But this traceid has a value
There is no error reported in the background log
Tugay Ersoy
guys is it possible to use zipkin-dependencies with kubernetes cronjob
Tugay Ersoy
apiVersion: batch/v1beta1
kind: CronJob 
    app: zipkin-dependencies
  schedule: "00 20 * * *"
  concurrencyPolicy: Forbid
          restartPolicy: Never
          - name: zipkin-dependencies
            image: openzipkin/zipkin-dependencies 
              - name: STORAGE_TYPE
                value: "elasticsearch"
              - name: ES_HOSTS
                value: "value"
it worked if someone needs this.
Hi i am using zipkin zipkin-server-2.22.2-exec.jar jar to run zipkin server and using in-memory db , i am having problem creating dependency graph
Arun Gopalpuri
is there a way to set brave tracing globally? I see that open tracing util has a GlobalTracer (https://github.com/opentracing/opentracing-java/blob/master/opentracing-util/src/main/java/io/opentracing/util/GlobalTracer.java) but there’s no way to extract Tracing from this GlobalTracer?
3 replies
HI I have rabbitmq server running and trace data are sent to zipkin queue. How can I communicate rabbitmq username / password / host information to zipkin depoyment file? I would like to deploy zipkin on kubernetes
1 reply

Hi. I have problem with with zipkin docker with SSL elasticsearch.

version: '3.8'
     image: openzipkin/zipkin
     container_name: zipkin-sit
     hostname: zipkin-sit
      - KAFKA_BOOTSTRAP_SERVERS=x.x.x.x:9092
      - KAFKA_GROUP_ID=zipkin-sit
      - KAFKA_TOPIC=zipkin-sit
      - STORAGE_TYPE=elasticsearch
      - ES_HOSTS=https://x.x.x.x:9200
      - ES_USERNAME=zip
      - ES_PASSWORD=zipkinpassword
      - ES_INDEX=index-zipkin
      - ES_javax.net.ssl.trustStoreType=PKCS12
      - ES_javax.net.ssl.trustStore=/opt/elastic-certificates.p12
      - ES_javax.net.ssl.keyStore=/opt/elasticsearch.keystore
      - 9411:9411
      - /etc/localtime:/etc/localtime:ro
      - zipkin_ssl:/opt/
       name: zipkin_ssl

And ES config is:

xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: /etc/elasticsearch/elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: /etc/elasticsearch/elastic-certificates.p12
xpack.security.http.ssl.enabled: true
xpack.security.http.ssl.keystore.path: "http.p12"

I have this Error:

zipkin-sit    | 2020-12-15 07:03:01.811  INFO [/] 1 --- [oss-http-*:9411] c.l.a.s.Server                           : Serving HTTP at / -
zipkin-sit    | 2020-12-15 07:03:37.537  WARN [/] 1 --- [cking-tasks-1-7] z.s.i.BodyIsExceptionMessage             : Unexpected error handling request.
zipkin-sit    |
zipkin-sit    | java.util.concurrent.RejectedExecutionException: General OpenSslEngine problem
zipkin-sit    |         at zipkin2.elasticsearch.internal.client.HttpCall.lambda$sendRequest$3(HttpCall.java:227) ~[zipkin-storage-elasticsearch-2.23.0.jar:?]
zipkin-sit    |         at java.util.concurrent.CompletableFuture.uniExceptionally(Unknown Source) ~[?:?]
zipkin-sit    |         at java.util.concurrent.CompletableFuture$UniExceptionally.tryFire(Unknown Source) ~[?:?]
zipkin-sit    |         at java.util.concurrent.CompletableFuture.postComplete(Unknown Source) ~[?:?]
zipkin-sit    |         at java.util.concurrent.CompletableFuture.completeExceptionally(Unknown Source) ~[?:?]
zipkin-sit    |         at com.linecorp.armeria.common.HttpMessageAggregator.fail(HttpMessageAggregator.java:140) ~[armeria-1.2.0.jar:?]
zipkin-sit    |         at com.linecorp.armeria.common.HttpMessageAggregator.onError(HttpMessageAggregator.java:56) ~[armeria-1.2.0.jar:?]
zipkin-sit    |         at com.linecorp.armeria.common.stream.FilteredStreamMessage$FilteringSubscriber.onError(FilteredStreamMessage.java:198) ~[armeria-1.2.0.jar:?]
zipkin-sit    |         at com.linecorp.armeria.common.stream.AbstractStreamMessage$CloseEvent.notifySubscriber(AbstractStreamMessage.java:280) ~[armeria-1.2.0.jar:?]
zipkin-sit    |         at com.linecorp.armeria.common.stream.DefaultStreamMessage.notifySubscriberOfCloseEvent0(DefaultStreamMessage.java:264) ~[armeria-1.2.0.jar:?]
zipkin-sit    |         at com.linecorp.armeria.common.stream.DefaultStreamMessage.notifySubscriberOfCloseEvent(DefaultStreamMessage.java:256) ~[armeria-1.2.0.jar:?]
zipkin-sit    |         at com.linecorp.armeria.common.stream.DefaultStreamMessage.handleCloseEvent(DefaultStreamMessage.java:436) ~[armeria-1.2.0.jar:?]
zipkin-sit    |         at com.linecorp.armeria.common.stream.DefaultStreamMessage.notifySubscriber0(DefaultStreamMessage.java:368) ~[armeria-1.2.0.jar:?]
zipkin-sit    |         at com.linecorp.armeria.common.RequestContext.lambda$makeContextAware$3(RequestContext.java:502) ~[armeria-1.2.0.jar:?]
zipkin-sit    |         at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164) ~[netty-common-4.1.53.Final.jar:4.1.53.Final]
zipkin-sit    |         at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472) ~[netty-common-4.1.53.Final.jar:4.1.53.Final]
zipkin-sit    |         at io.netty.channel.epoll.EpollEv
2 replies
i'm trying to run zipkin 2.23.1 latest with elasticsearch 5.5.2 just started the server zipkin throws a exception "request [/_template/zipkin:span_template] contains unrecognized parameter: [include_type_name]",
How to make zipkin support elasticsearch 5?
1 reply
Can the zipkin executable jar be configured to log to a rolling log file? I was able to log to a log file with --logging.file.name=, but I can't get custom logback configuration working with -DLogback.configurationFile=. I'm trying with zipkin 2.23.1
6 replies
Harsh Mangal
hello everyone!
can anyone tell how can I use zipkin in Python applications?
3 replies

Hello, when building the openzipkin/zipkin image from docker file. I am getting below exception, where its not able to resolve the install.sh file.

MACC02VK4:$ docker build -t zipkin .
Sending build context to Docker daemon 12.8kB
Step 1/40 : ARG java_version=1.8.0_162
Step 2/40 : FROM scratch as scratch
Step 3/40 : COPY . /code/
---> f2d774e51150
Step 4/40 : FROM openzipkin/zipkin-builder as install
---> 2e36b15748e1
Step 5/40 : WORKDIR /install
---> Using cache
---> c3fb663edb11
Step 6/40 : COPY --from=scratch /code /code
---> b826633267cb
Step 7/40 : ARG release_version=master
---> Running in 80b1ecd13aaa
Removing intermediate container 80b1ecd13aaa
---> 5103ecf24ede
Step 8/40 : ENV RELEASE_VERSION=$release_version
---> Running in bbd43a0c4dd6
Removing intermediate container bbd43a0c4dd6
---> 3413d24ee766
Step 9/40 : COPY docker/bin/install.sh /tmp/

COPY failed: stat /var/lib/docker/tmp/docker-builder652222391/docker/bin/install.sh: no such file or directory

1 reply
Jonatan Ivanov


Does anyone know why does TraceIdContext:: toTraceIdString return a 16-digit value if the high bytes are all zero and a 32-digit value otherwise?

This seems very intentional but pretty weird, e.g.: if I have two IDs:

  • 0000000000000000123456789abcdef0
  • 0000000000000001123456789abcdef0
    (The only difference is in the high bites, the first is all the way zero, the second is one in the last place)

I will get:

  • 123456789abcdef0
  • 0000000000000001123456789abcdef0

Which is weird to me and also can lead issues if the user expects a fixed-length value from that method.

39 replies
String produceLinkLocalIp() {
try {
Enumeration<NetworkInterface> nics = NetworkInterface.getNetworkInterfaces();
while (nics.hasMoreElements()) {
NetworkInterface nic = nics.nextElement();
Enumeration<InetAddress> addresses = nic.getInetAddresses();
while (addresses.hasMoreElements()) {
InetAddress address = addresses.nextElement();
if (address.isSiteLocalAddress()) return address.getHostAddress();
} catch (Exception e) {
// don't crash the caller if there was a problem reading nics.
log("error reading nics", e);
return null;
why use this code to get ip ?sometimes our ip is not SiteLocalAddress
1 reply