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

Not all trace I can see in web ui. #222

Open
cosmonaut13 opened this issue Sep 20, 2018 · 8 comments
Open

Not all trace I can see in web ui. #222

cosmonaut13 opened this issue Sep 20, 2018 · 8 comments

Comments

@cosmonaut13
Copy link

I use zipkin4net and docker-zipkin to track traces in my application. I have a unit test. Inside a unit test a client is created from which I send a request to the first server, then I send the request from the first server to the second, then from the second service I send a request to the third service, and then I return the response to the client. All this I do with the help of commands ClientSend - ServerReciev-ServerSend-ClientReciev. If the request is one, then all is well. If I send asynchronously 100 requests, then some of the traces are lost. But if I debug the test in debug mode, or when I end the test, I set a delay, then all the traces are displayed. It seems that all the traces simply do not have time to send to the collector. Can you help me?

@fedj
Copy link
Collaborator

fedj commented Sep 21, 2018

Hi @cosmonaut13,

Are you using the Rate Limiting system ? If so, it could explain that some spans are just discarded.

@cosmonaut13
Copy link
Author

@fedj Hi. No, I don't use Rate Limiting test. For exmape:
-> start unit test
TraceManager.Start()
await (here send asynchronously 100 requests how Task.WhenAll(Enumerable(tasks)))
TraceManager.Stop()
->end unit test

@fedj
Copy link
Collaborator

fedj commented Sep 25, 2018

Ok, can you also tell me the sampling rate you're using ?

@cosmonaut13
Copy link
Author

@fedj sampling rate = 1.0

@cosmonaut13
Copy link
Author

if i set Await Task.Delay() after TraceManager.Stop() but before end of unit test, i see all traces in web ui.

@fedj
Copy link
Collaborator

fedj commented Sep 25, 2018

Ok. Can you try with a custom IRecordDispatcher ? The default one is async and could cause some issue (c.f.

public static bool Start(ILogger logger, IRecordDispatcher dispatcher)
)

@cosmonaut13
Copy link
Author

cosmonaut13 commented Sep 25, 2018

@fedj Do I understand correctly, I need to write my OrderAsyncDispatcher? I use standart IRecordDispatcher

@fedj
Copy link
Collaborator

fedj commented Sep 25, 2018

@cosmonaut13 I understand you can be surprised, I'm just trying to understand where the async could come from and I think the easiest way would be to make it synchronous to check our assertions. Once the problem isolated, we will try to come up with a fix (probably trying to flush everything before stopping) but we need to verify assertions first.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants