Skip to content

Commit e5c1a22

Browse files
tigrannajaryanSergeyKanzhelev
authored andcommitted
Clarify placement of exporter implementation (#277)
There was unnecessarily suggestive wording that implied that vendor exporters should be part of language libraries. Added a clarification regarding vendor-specific exporters, OpenTelemetry protocol exporter and standard output exporter.
1 parent 420d77c commit e5c1a22

1 file changed

Lines changed: 2 additions & 1 deletion

File tree

specification/library-guidelines.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,9 @@ _Note to Language Library Authors:_ OpenTelemetry specification, API and SDK imp
1616

1717
3. The developers of the final application normally decide how to configure OpenTelemetry SDK and what extensions to use. They should be also free to choose to not use any OpenTelemetry implementation at all, even though the application and/or its libraries are already instrumented. The rationale is that third-party libraries and frameworks which are instrumented with OpenTelemetry must still be fully usable in the applications which do not want to use OpenTelemetry (so this removes the need for framework developers to have "instrumented" and "non-instrumented" versions of their framework).
1818

19-
4. Language library implementation must be clearly separated into wire protocol-independent parts that implement common logic (e.g. batching, tag enrichment by process information, etc.) and protocol-dependent telemetry exporters. Telemetry exporters must contain minimal functionality, thus enabling vendors to easily add support for their specific protocol to the language library.
19+
4. Language library implementation must be clearly separated into wire protocol-independent parts that implement common logic (e.g. batching, tag enrichment by process information, etc.) and protocol-dependent telemetry exporters. Telemetry exporters must contain minimal functionality, thus enabling vendors to easily add support for their specific protocol.
2020

21+
5. Language library implementation should include an exporter for OpenTelemetry Protocol (when the protocol is specified and approved) and may include an exporter that writes to standard output (to use for debugging and testing). Vendor-specific exporters (exporters that implement vendor protocols) should not be included in language libraries and should be placed elsewhere (the exact approach for storing and maintaining vendor-specific exporters will be defined in the future).
2122

2223
# Language Library Generic Design
2324

0 commit comments

Comments
 (0)