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

Trace API Final Check #1765

Closed
1 of 30 tasks
dyladan opened this issue Dec 17, 2020 · 8 comments
Closed
1 of 30 tasks

Trace API Final Check #1765

dyladan opened this issue Dec 17, 2020 · 8 comments

Comments

@dyladan
Copy link
Member

dyladan commented Dec 17, 2020

As we near 1.0 I want to make absolutely 100% sure that we are spec compliant before publishing. To that end, I would ask that as many people as possible, but especially @open-telemetry/javascript-maintainers and @open-telemetry/javascript-approvers take one last look hard at https://github.com/open-telemetry/opentelemetry-specification/blob/master/specification/trace/api.md and ensure they don't spot anything required by the spec that we do not have, or forbidden by the spec that we do have. Once we publish we cannot change.

Once you have gone through the spec, please comment here and I will add your name to this list or if you have permission feel free to edit this comment.

Trace Spec Checked by:

Maintainers

Approvers

Contributors

  • ...

Baggage Spec Checked by:

Maintainers

Approvers

Contributors

  • ...

Context Spec Checked by:

Maintainers

Approvers

Contributors

  • ...
@vmarchaud
Copy link
Member

I think we need to wait for #1764, #1749, #1759 and find a settlement for #1750 before. They all modify the api package and involves methods that user will use for tracing.

@dyladan
Copy link
Member Author

dyladan commented Dec 21, 2020

@vmarchaud I am really just asking for people to take a look through the spec for things we've missed. Since those issues are tracked already and we're aware of them, they're ok. But for instance I had not realized the methods removed in #1764 were removed from the spec and I want to make sure we're not missing more things like that.

@vmarchaud
Copy link
Member

@dyladan Oh i see, then i'll let my comment as-is since others might find it useful to know that PRs are already opened for some changes in the spec

@Flarna
Copy link
Member

Flarna commented Jan 5, 2021

There is an inconsistency between tracer.startSpan() and span.end() regarding timestamps passed by user:

  • SpanOptions #startTime is of type number
  • span.end() accepts TimeInput which is HrTime | number | Date

@srikanthccv
Copy link
Member

@obecny
Copy link
Member

obecny commented Jan 7, 2021

Shouldn't TraceState implementation (https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-core/src/trace/TraceState.ts) be part of API according to spec?

It looks like you are right, unless I'm missing something else, @dyladan ?

@Flarna
Copy link
Member

Flarna commented Jan 20, 2021

The span.setAttribute() API could be improved. It tells null and undefined are not allowed for value but type definition has value optional.

/**
* Sets an attribute to the span.
*
* Sets a single Attribute with the key and value passed as arguments.
*
* @param key the key for this attribute.
* @param value the value for this attribute. Setting a value null or
* undefined is invalid and will result in undefined behavior.
*/
setAttribute(key: string, value?: AttributeValue): this;

@dyladan
Copy link
Member Author

dyladan commented Jan 20, 2021

Shouldn't TraceState implementation (https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-core/src/trace/TraceState.ts) be part of API according to spec?

It looks like you are right, unless I'm missing something else, @dyladan ?

The actual implementation? The interface is already in.

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

5 participants