model.proto
means that it accepts the opentelemetry http_protobuf format. I'm guessing it does.
When instrumenting a project your application should only depend on the OpenTelemetry API application, found in directory apps/opentelemetry_api of this repo which is published as the hex package opentelemetry_api.
This is confusing - since to instrumnet my project, isn’t it supposed to use SDK, not API? e.g. SDK actually holds the implementation, and sdk depends on api, not vice versa
with_span
to the code
Aha probably the confusion is whether “application” is of the end-user project (e.g. project to run a web service), or my library package (e.g. HTTP library “application”). Is there any good terminology in Erlang?
https://github.com/open-telemetry/opentelemetry-specification/blob/master/specification/library-guidelines.md uses “final application” vs “third party libraries/frameworks” btw.