Rename projects to Jaeger.*
Closed this issue · 3 comments
I'll move the discussion regarding the new project names into this new issue to not let the original issue (jaegertracing/jaeger#578 ) go off-topic.
Will the project still be called "LetsTrace" or will it be renamed to e.g. "Jaeger"? Seems a bit confusing to have a jaeger-client-csharp project that contains something called "LetsTrace" (which sounds completely tracer-independent).
Personally, I would prefer to rename
LetsTrace
toJaeger.Core
andLetsTracer.Jaeger
toJaeger.Transport.Thrift
. ThenLetsTrace.Zipkin
could beJaeger.Transport.Zipkin
. This would be in accordance to the already existingJaeger.Thrift
which is generated fromjaeger-idl
and would make it easier to see that Thrift transport consists of 3 projects and Zipkin is just the transport.I also would like to see the following NuGET packages:
- Jaeger.Core
Only containing projectJaeger.Core
- Jaeger.Thrift
Containing projectsThrift
,Jaeger.Thrift
andJaeger.Transport.Thrift
Depending on NuGETJaeger.Core
- Jaeger.Zipkin
Containing projectJaeger.Transport.Zipkin
Depending on NuGETJaeger.Core
- Jaeger
Depending on NuGETJaeger.Thrift
as an alias and easy way to keep up2date in case we change somethingThis would allow users to use
Jaeger.Core
+Jaeger.Zipkin
if they only want to use the Zipkin transport without having to include Thrift at all, or justJaeger
+Jaeger.Zipkin
. And the default user can just useJaeger
which allows as to remove Thrift runtime from NuGETJaeger.Thrift
and replace it by a dependency at a later point once there is an official release.If you want to spare NuGET
Jaeger.Thrift
we can also just make that NuGETJaeger
(similar to who it's handled in Java).
I think that NuGet packages should have the same name as the underlying assembly.
Having a
Jaeger.Zipkin
package which contains aJaeger.Transport.Zipkin.dll
is confusing. The package should therefore be calledJaeger.Transport.Zipkin
IMO.(Having only "Jaeger.Zipkin" is confusing anyway as this just names two different products without telling how they are related to each other.)
This would reflect how it's also done in the jave repository: jaeger-zipking and jaeger-thrift.
This naming scheme is also used by
GRPC
whereGRPC
is an alias forGRPC.Core
.Jaeger.Thrift
contains more than just one DLL compared to Jaeger.Zipkin. Those two would just be easier ways to include the wanted technology with all it's dependencies.
Here is what I'm thinking based on the above:
Jaeger.Core
- what is currently
LetsTrace
- what is currently
Jaeger.Thrift
- the generated Thrift code
- depends on wherever Thrift ends up, see #35
Jaeger.Transport.Thrift
- what is currently
LetsTrace.Jaeger
- depends on
Jaeger.Core
andJaeger.Thrift
- what is currently
Jaeger.Transport.Zipkin
- what is currently
LetsTrace.Zipkin
- depends on
Jaeger.Core
- one thing of note here is that in my initial testing the
LetsTrace.Zipkin
did not work with Jaeger because of some JSON serialization issues.
- what is currently
I'm a big fan of only having one DLL per package and also matching DLL names with the package name.
I'm fine with @grounded042's proposal but would like to add one:
Jaeger
- just an alias since most people don't read manuals or getting started guides
- depends on
Jaeger.Transport.Thrift
This is complete as of #38