opentelemetry-ruby
opentelemetry-ruby copied to clipboard
Audit for 1.13.0 spec compliance
trafficstars
Spec release 1.13.0 is available:
The release should be audited for issues pertinent to opentelemetry-ruby, and issues created for any outstanding spec compliance work. Make sure to tag those issues with the spec-compliance and spec-compliance/v1.13.0 labels, and add them to the Spec Compliance project.
Traces
- [x] Clarify the return of Export(batch) in the Batch Span Processor and exporter concurrency (https://github.com/open-telemetry/opentelemetry-specification/pull/2452)
- ✅ The clarified requirements state that calls to export must not happen concurrently, but that the export itself can be done concurrently within the exporter. As far as I can tell, we simply have no concurrency in any of our exporters, so we're okay here.
- [x] Clarify that Context should not be mutable when setting a span (https://github.com/open-telemetry/opentelemetry-specification/pull/2637)
- ✅ Our contexts are immutable, as far as I can tell. Granted, is anything in ruby every truly immutable? Of course not, but our
Contextcode treats things as if they are. 😄
- ✅ Our contexts are immutable, as far as I can tell. Granted, is anything in ruby every truly immutable? Of course not, but our
- [x] Clarify that ForceFlush is a required method on SpanExporter interface (https://github.com/open-telemetry/opentelemetry-specification/pull/2654)
- ✅ We're good here, all exporters (even the in-memory and console exporters) implement this interface.
Metrics
- [ ] Add experimental OTEL_EXPORTER_OTLP_DEFAULT_HISTOGRAM_AGGREGATION variable for configuring default histogram aggregation of OTLP metric exporter (https://github.com/open-telemetry/opentelemetry-specification/pull/2619)
- [ ] Clarify async instrument callback identity (https://github.com/open-telemetry/opentelemetry-specification/pull/2538)
- [ ] Prometheus export: Only monotonic sum are counters (with _total) (https://github.com/open-telemetry/opentelemetry-specification/pull/2644)
- [ ] [OM/OTLP] Use _created for StartTimeUnixNano and vice-versa (https://github.com/open-telemetry/opentelemetry-specification/pull/2645)
- [ ] Prometheus compatibility: use target_info metric instead of "target" info MF (https://github.com/open-telemetry/opentelemetry-specification/pull/2701)
- [ ] Add optional Zero Threshold for Exponential Histograms to the metrics data model (https://github.com/open-telemetry/opentelemetry-specification/pull/2665)
- [ ] Change the inclusivity of exponential histogram bounds (https://github.com/open-telemetry/opentelemetry-specification/pull/2633)
- [ ] Add process.threads host metric semantic convention. (https://github.com/open-telemetry/opentelemetry-specification/pull/2705).
Logs
Logs? What logs? 🙃
Resource
- [ ] Update the version of the W3C Baggage specification used for OTEL_RESOURCE_ATTRIBUTES (https://github.com/open-telemetry/opentelemetry-specification/pull/2670)
- Tracked in #1361
Semantic Conventions
- [ ] We need to update the version of the semconv gem to pull all of these in:
- Add net.app.protocol.* attributes (https://github.com/open-telemetry/opentelemetry-specification/pull/2602)
- Add network metrics to process semantic conventions (https://github.com/open-telemetry/opentelemetry-specification/pull/2556)
- Add semantic conventions for GraphQL (https://github.com/open-telemetry/opentelemetry-specification/pull/2456)
- Add rpc.grpc.status_code to RPC metric semantic conventions (https://github.com/open-telemetry/opentelemetry-specification/pull/2604)
- Add http...size metric semantic conventions for tracking size of requests / responses for http servers / clients (https://github.com/open-telemetry/opentelemetry-specification/pull/2588)
- Define socket-level attributes and clarify logical peer and host attributes meaning (https://github.com/open-telemetry/opentelemetry-specification/pull/2594)
- Add semantic conventions for JVM buffer pool usage (https://github.com/open-telemetry/opentelemetry-specification/pull/2650)
- Improve the definition of state attribute for metric system.network.connections (https://github.com/open-telemetry/opentelemetry-specification/pull/2663)
- Add OpenSearch to db.system semantic conventions (https://github.com/open-telemetry/opentelemetry-specification/pull/2718)
- Remove alternative attribute sets from HTTP semantic conventions (https://github.com/open-telemetry/opentelemetry-specification/pull/2469)
- Add the convention 'type' to the YAML definitions for all existing semantic conventions (https://github.com/open-telemetry/opentelemetry-specification/pull/2693)
- [ ] Add process.parent_pid attribute for use in reporting parent process id (PID) (https://github.com/open-telemetry/opentelemetry-specification/pull/2691)
- [ ] Clarify when "count" is used instead of pluralization (https://github.com/open-telemetry/opentelemetry-specification/pull/2613)
- [ ] Adopt attribute requirement levels in semantic conventions (https://github.com/open-telemetry/opentelemetry-specification/pull/2594)
- Since attribute requirement levels were just adopted, these should come along "for free" and don't need separate auditing (I think).
- Change cloudevents.event_spec_version and cloudevents.event_type level from required to recommended (https://github.com/open-telemetry/opentelemetry-specification/pull/2618)
- Change faas.document.time and faas.time level from required to recommended (https://github.com/open-telemetry/opentelemetry-specification/pull/2627)
- Since attribute requirement levels were just adopted, these should come along "for free" and don't need separate auditing (I think).
- [ ] BREAKING: rename net.peer.ip to net.sock.peer.addr, net.host.ip to net.sock.host.addr,
net.peer.name to net.sock.peer.name for socket-level instrumentation.
- This change should get pulled in with the update to semconv, but we should audit to ensure that we update any calling code which might be referencing it.
- I believe we have references to it manually, without using the semconv gem: zipkin exporter
OpenTelemetry Protocol
- [ ] Add support for partial success in an OTLP export response (https://github.com/open-telemetry/opentelemetry-specification/pull/2696)
- Tracked in #1361
SDK Configuration
- [ ] Mark OTEL_METRIC_EXPORT_INTERVAL, OTEL_METRIC_EXPORT_TIMEOUT environment variables as Stable (https://github.com/open-telemetry/opentelemetry-specification/pull/2658)
Telemetry Schemas
- [ ] Introduce "split" metric schema transformation (https://github.com/open-telemetry/opentelemetry-specification/pull/2653)
Common
- [ ] Introduce Instrumentation Scope Attributes (https://github.com/open-telemetry/opentelemetry-specification/pull/2579)
- [ ] Define Instrumentation Scope Attributes as non identifiers (https://github.com/open-telemetry/opentelemetry-specification/pull/2789)
👋 This issue has been marked as stale because it has been open with no activity. You can: comment on the issue or remove the stale label to hold stale off for a while, add the keep label to hold stale off permanently, or do nothing. If you do nothing this issue will be closed eventually by the stale bot.