Skip to content

Commit

Permalink
Setting naming convention for exporter packages (open-telemetry#629)
Browse files Browse the repository at this point in the history
* Setting naming convention for exporter packages

There is an implicit convention around exporter packages in several
language instrumentations. Adding the convention to the spec standardizes
the convention.

* Addressing feedback

- modifying wording for exporter packages to have prefixes
- fixing link naming
- adding entry to changelog

* Update specification/library-guidelines.md

Co-authored-by: Armin Ruech <[email protected]>

* adding arminru's suggestions

Co-authored-by: Armin Ruech <[email protected]>
  • Loading branch information
toumorokoshi and arminru authored Jun 12, 2020
1 parent 58a6871 commit 850c286
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 3 deletions.
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ the release.

## Unreleased

- Added conventions for naming of exporter packages

## v0.5.0 (06-02-2020)

- Define Log Data Model.
Expand Down
10 changes: 8 additions & 2 deletions specification/glossary.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,13 @@ Denotes the library that implements the *OpenTelemetry API*.
See [Library Guidelines](library-guidelines.md#sdk-implementation) and
[Library resource semantic conventions](resource/semantic_conventions/README.md#telemetry-sdk)

<a name="instrumented_library"></a>
<a name="telemetry_sdk"></a>

### Exporter Library

Libraries which are compatible with the [Telemetry SDK](glossary.md#telemetry-sdk) and provide functionality to emit telemetry to consumers.

<a name="exporter_library"></a>

### Instrumented Library

Expand All @@ -37,7 +43,7 @@ Example: `io.opentelemetry.contrib.mongodb`.

Synonyms: *Instrumenting Library*

<a name="name"></a>
<a name="instrumentation_library"></a>

### Tracer Name / Meter Name

Expand Down
8 changes: 8 additions & 0 deletions specification/library-guidelines.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,14 @@ Vendors are encouraged to keep protocol-specific exporters as simple as possible

End users should be given the flexibility of making many of the decisions regarding the queuing, retrying, tagging, batching functionality that make the most sense for their application. For example, if an application's telemetry data must be delivered to a remote backend that has no guaranteed availability the end user may choose to use a persistent local queue and an `Exporter` to retry sending on failures. As opposed to that for an application that sends telemetry to a locally running Agent daemon, the end user may prefer to have a simpler exporting configuration without retrying or queueing.

If additional exporters for the sdk are provided as separate libraries, the
name of the library should be prefixed with the terms "OpenTelemetry" and "Exporter" in accordance with the naming conventions of the respective technology.

For example:

- Python and Java: opentelemetry-exporter-jaeger
- Javascript: @opentelemetry/exporter-jeager

### Alternative Implementations

The end-user application may decide to take a dependency on alternative implementation.
Expand Down
2 changes: 1 addition & 1 deletion specification/trace/sdk_exporters/zipkin.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ and Zipkin.

Zipkin service name MUST be set to the value of the
[resource attribute](../../resource/semantic_conventions/README.md):
`service.name`. In Zipkin it is important that the service name is consistent
`service.name`. In Zipkin it is important that the service name is consistent
for all spans in a local root. Otherwise service graph and aggregations would
not work properly. OpenTelemetry doesn't provide this consistency guarantee.
Exporter may chose to override the value for service name based on a local root
Expand Down

0 comments on commit 850c286

Please sign in to comment.