-
Notifications
You must be signed in to change notification settings - Fork 316
Changes from 1 commit
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -23,4 +23,21 @@ type Tracer interface { | |
// SetTag("lucky_number", 42) | ||
// | ||
StartTrace(operationName string) Span | ||
|
||
// ImplementationID returns information about the OpenTracing | ||
// implementation backing the Tracer. The return value should not change | ||
// over the life of a particular Tracer instance. | ||
ImplementationID() *ImplementationID | ||
} | ||
|
||
// ImplementationID is a simple, extensible struct that describes an | ||
// OpenTracing implementation. | ||
type ImplementationID struct { | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. (the only interesting part of this change) |
||
// The (stable) name of the implementation. E.g., "Dapper" or "Zipkin". The | ||
// Name should not reflect the host language or platform. | ||
Name string | ||
|
||
// Version may take any form, but SemVer (http://semver.org/) is strongly | ||
// encouraged. | ||
Version string | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @bensigelman , this looks pretty good, but Go seems a bit like the exceptional case with regards to the utility of a version string (since everything in Go is basically statically bound). I'm curious what this might look like for Python. I'm specifically considering the case where the supported version of the OpenTracing standard is what's of interest rather than the underlying implementation version. E.g. if an arbitrary piece of Python code is handed a (By the way I believe I'm safe in assuming that in the above There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I agree with @bcronin, it's the OpenTracing version that the original ticket was asking for. We said it would be best done via Capabilities API rather than a version. At the moment, however, there doesn't seem to be any aspects of the API that are optional and require introspection by the client code. |
||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you're explicitly letting tracers return
nil
here? Doesn't seem like a bad idea to force tracers to pick a name and version.