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

Compliance Matrix Validation for rel1.0.0 -Context Propagation #719

Closed
12 of 15 tasks
lalitb opened this issue May 3, 2021 · 3 comments
Closed
12 of 15 tasks

Compliance Matrix Validation for rel1.0.0 -Context Propagation #719

lalitb opened this issue May 3, 2021 · 3 comments
Assignees
Labels
release:required-for-ga To be resolved before GA release spec-compliance Not compliant to OpenTelemetry specs
Milestone

Comments

@lalitb
Copy link
Member

lalitb commented May 3, 2021

This ticket is to validate the below attributes of Spec Compliance Matrix for Rel 1.0.0. While validation, if there is any ticket created for non-compliance, mention that next to the non-compliant point below in the description.

Link: https://github.com/open-telemetry/opentelemetry-specification/blob/v1.0.0/spec-compliance-matrix.md#context-propagation

Context Propagation:

  • Create Context Key
  • Get value from Context
  • Set value for Context
  • Attach Context
  • Detach Context
  • Get current Context
  • Composite Propagator
  • Global Propagator
  • TraceContext Propagator
  • B3 Propagator
  • Jaeger Propagator

TextMap Propagator:

@lalitb lalitb added release:required-for-ga To be resolved before GA release spec-compliance Not compliant to OpenTelemetry specs labels May 3, 2021
@lalitb lalitb added this to the 1.0.0-rc.1 milestone May 3, 2021
@lalitb lalitb self-assigned this May 16, 2021
@lalitb
Copy link
Member Author

lalitb commented May 17, 2021

Context Propagation:

Create Context Key

This is not configurable. The default keys are hard-coded in code - current_span, baggage.

Get value from Context

static ContextValue GetValue(nostd::string_view key, Context *context = nullptr) noexcept

Set value for Context

static Context SetValue(nostd::string_view key,
const ContextValue &value,
Context *context = nullptr) noexcept
{

Attach Context

static nostd::unique_ptr<Token> Attach(const Context &context) noexcept

Detach Context

static bool Detach(Token &token) noexcept { return GetRuntimeContextStorage()->Detach(token); }

Get current Context

static Context GetCurrent() noexcept { return GetRuntimeContextStorage()->GetCurrent(); }

Composite Propagator

https://github.com/open-telemetry/opentelemetry-cpp/blob/v0.6.0/api/include/opentelemetry/context/propagation/composite_propagator.h

Global Propagator

https://github.com/open-telemetry/opentelemetry-cpp/blob/v0.6.0/api/include/opentelemetry/context/propagation/global_propagator.h

TraceContext Propagator

https://github.com/open-telemetry/opentelemetry-cpp/blob/v0.6.0/api/include/opentelemetry/trace/propagation/http_trace_context.h

B3 Propagator

https://github.com/open-telemetry/opentelemetry-cpp/blob/v0.6.0/api/include/opentelemetry/trace/propagation/b3_propagator.h

Jaeger Propagator

https://github.com/open-telemetry/opentelemetry-cpp/blob/v0.6.0/api/include/opentelemetry/trace/propagation/jaeger.h

@lalitb
Copy link
Member Author

lalitb commented May 17, 2021

TextMap Propagator:

Fields:
Not supported: #762

Setter argument

virtual void Set(nostd::string_view key, nostd::string_view value) noexcept = 0;

Getter argument

virtual nostd::string_view Get(nostd::string_view key) const noexcept = 0;

Getter argument returning keys

Not supported. #762

@lalitb
Copy link
Member Author

lalitb commented May 24, 2021

Closing, as validation complete and created required tickets.

@lalitb lalitb closed this as completed May 24, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release:required-for-ga To be resolved before GA release spec-compliance Not compliant to OpenTelemetry specs
Projects
None yet
Development

No branches or pull requests

1 participant