ThreeMammals / Ocelot

.NET API Gateway
https://www.nuget.org/packages/Ocelot
MIT License
8.35k stars 1.63k forks source link

Monitoring idea: Can we support Zipkin or Jaeger? #495

Closed tungphuong closed 10 months ago

tungphuong commented 6 years ago

HI,

About tracing feature, can we integrate to zipkin or jaeger? Becase Butterfly is still preview version, we cannot use it for production.

Thanks,

TomPallister commented 6 years ago

@tungphuong Ocelot doesnt support zipkin at the moment, you could probably inject middleware or use delegating handlers to add this to Ocelot. I will leave this issue open and look into if we could provide easy integration with zipkin or jaeger.

tungphuong commented 6 years ago

Thanks, I am trying to do like that with delegating handlers. Could you please drop me some sample code? I will try

tungphuong commented 6 years ago

@TomPallister I know you are ready to support Butterfly. But it is still in preview. So, it is difficult to use for production. So, I suggest we should support Jaeger.

geffzhang commented 6 years ago

Butterfly should be replace with skywalking-netcore https://github.com/OpenSkywalking/skywalking-netcore, This is docs https://github.com/apache/incubator-skywalking/tree/master/docs

TomPallister commented 6 years ago

OK cool, If anyone wants to pick this work up please feel free to do so!

TomPallister commented 6 years ago

started looking at this, I'm going to start breaking the dependencies like butterfly out into there own Ocelot.xxx packages e.g. the first one will be Ocelot.Butterfly. I will have some kind of interface that all the tracing libraries can sustain. This is my general idea and I will see if it works before pushing new versions etc :)

TomPallister commented 6 years ago

@geffzhang from looking at Skywalking docs I dont think that you would need to do an Ocelot integration? I will see how it works.

geffzhang commented 6 years ago

@TomPallister It was NET Core Probe。http://www.cnblogs.com/liuhaoyang/p/skywalking-dotnet-v02-release.html Now we can remove butterfly.

tungphuong commented 6 years ago

@TomPallister Do you have plan to support Jeager?

TomPallister commented 6 years ago

@tungphuong yes in the future, it isn't something I'm working on at the moment. I need to finish #529 before I do this work because I cannot bring more dependencies into Ocelot. Users must be able to pick their dependencies more specifically.

tungphuong commented 6 years ago

@TomPallister many thanks, I am waiting for this feature.

TomPallister commented 6 years ago

No worries, while you are waiting you might be able to implement for your use case using DelegatingHandlers feature in Ocelot but im not 100% sure.

kjellegafvelin commented 4 years ago

I'm currently looking in to add OpenTracing support to Ocelot. Is there anyone else doing this too?

tungphuong commented 4 years ago

Currently, I am using "OpenTelemetry" in my project. It is quite good; I will update link then

EngRajabi commented 4 years ago

support jaeger and zipkin. These two pamphlets are the best tools

kjellegafvelin commented 4 years ago

With the Open Tracing support I added you can use Jaeger, Zipkin or any other tracing tool as long as it has a .Net client with the Open Tracing interfaces.

@TomPallister maybe it's time to close this one now?

kaarthickraman commented 1 year ago

@TomPallister should this be closed ? As per @kjellegafvelin open tracing supports jaeger. Pls update.