Module: OpenTelemetry::Exporter::OTLP::Common::Utilities
- Extended by:
- Utilities
- Included in:
- Utilities
- Defined in:
- lib/opentelemetry/exporter/otlp/common/utilities.rb
Overview
Contains common utilities used by the otlp exporters
Instance Method Summary collapse
-
#build_uri(endpoint, path = '', primary_src = '', secondary_src = 'OTEL_EXPORTER_OTLP_ENDPOINT', default = 'http://localhost:4318/') ⇒ Object
Builds a url using the endpoint defined and if not present uses the configured sources.
Instance Method Details
#build_uri(endpoint, path = '', primary_src = '', secondary_src = 'OTEL_EXPORTER_OTLP_ENDPOINT', default = 'http://localhost:4318/') ⇒ Object
Builds a url using the endpoint defined and if not present uses the configured sources
18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/opentelemetry/exporter/otlp/common/utilities.rb', line 18 def build_uri(endpoint, path = '', primary_src = '', secondary_src = 'OTEL_EXPORTER_OTLP_ENDPOINT', default = 'http://localhost:4318/') endpoint ||= ENV.fetch(primary_src, nil) raise ArgumentError, "invalid url for OTLPExporter #{endpoint} set via #{primary_src}" unless endpoint.nil? || OpenTelemetry::Common::Utilities.valid_url?(endpoint) if endpoint.nil? endpoint = ENV.fetch(secondary_src, default) raise ArgumentError, "invalid url for OTLPExporter #{endpoint} set via #{secondary_src}" unless OpenTelemetry::Common::Utilities.valid_url?(endpoint) endpoint += '/' unless endpoint.end_with?('/') URI.join(endpoint, path) else URI(endpoint) end end |